免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 76703 | 回复: 205
打印 上一主题 下一主题

Ms SQL常见问题收集整理集(不断收集中...) [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2003-11-12 16:16 |只看该作者 |倒序浏览
Microsoft Corporation

【「Microsoft SQL Server 7.0」以下简称「SQL Server 7.0」】

SQL Server 7.0 有哪几种安全模式?

两种:SQL Server和Windows NT(混合)及Windows NT only。SQL Server 和Windows NT相当于SQL Server 6.5版本的混合模式。Windows NT only相当于SQL Server 6.5 版本的信任模式。在SQL Server 7.0版没有提供相当于SQL Server 6.5版本的标准模式。

SQL Server 6.5的SQL安全管理器(Security Manger)为何在SQL Server 7.0不见了,替代工具是什么?

SQL Server 7.0提供了安全向导(Security Wizard)来取代SQL安全管理器(Security Manger)。

使用SQL Server和 Windows NT(混合)安全模式的优点是什么?

非Windows NT 客户端,Internet 客户端亦可登录 。
提供多层保护 。
使用Windows NT only安全模式的优点是什么?

用户可以更快速登录SQLServer,而无需另外再记一个密码。
使用NT提供的密码设置功能,如最小密码长度(minimum password length),..
只需为NT组设定帐号和组设置。
如何设置SQL Server 的安全模式?

启动SQL Server企业管理器(Enterprise Manager)。
在控制台(console)树中,展开Microsoft SQL Servers,然后展开SQL Server Group或您设定的组,单击选择要设定的SQL Server。
单击鼠标右键,选择\"属性(Properties)\",然后选择\"安全(Security)\"选项卡。
在Security部分选择\"SQL Server and Windows NT\"或是\"Windows NT only\" 。
如何在SQL Server企业管理器中,设置允许一个Windows NT组或用户能登录SQL Server?

在SQL Server企业管理器中,展开要加入Windows NT组或用户帐号的SQL Server,再展开Security 文件夹,选择 login,然后单击鼠标右键,选择快捷菜单中的new login。
选择\"General\"选项卡,在Name字段中填入\"域\\帐号\"或\"域\\组\"。
在Authentication(身份验证)部分选择Windows NT Authentication(Windows NT身份验证),然后选择domain (域)。
在Default(默认)部分选择预设数据库和语言。
单击\"OK(确定)按钮。
如何使用SQL Server存储过程,使一个Windows NT组或用户能登录SQL Server?

sp_grantlogin {\'login\'}
其中\'login\" 包含域及组/用户帐号,不可超过128个字符。

设定Windows NT组或用户登录SQL Server时需要注意哪些事项?

如果SQL Server的登录id对应于一个Windows NT组,添加或删除Windows NT组中的用户不需重新建立SQL Server 的登录id。
如果SQL Server的登录id对应于一个Windows NT组或用户,将此Windows NT组或用户删除并不会将此SQL Server 的登录id删除。

论坛徽章:
0
2 [报告]
发表于 2003-11-12 16:18 |只看该作者
SQL Server 2000中全文检索的使用(1)  

  
引言

微软的SQL Server数据库是一个在中低端企业应用中占有广泛市场的关系型数据库系统,它以简单、方便、易用等特性深得众多软件开发人员和数据库管理人员的钟爱。但SQL Server 7.0以前的数据库系统由于没有全文检索功能,致使无法提供像文本内容查找此类的服务,成为一个小小的遗憾。从SQL Server 7.0起,到如今的SQL Server 2000终于具备了全文检索功能,使用户可以高效地检索存储在数据库char、varchar、text、ntext、nchar、nvarchar等数据类型列中的文本数据。

建立全文索引

在进行全文检索之前,必须先建立和填充数据库全文索引。为了支持全文索引操作,SQL Server 7.0新增了一些存储过程和Transact-SQL语句。使用这些存储过程创建全文索引的具体步骤如下(括号内为调用的存储过程名称):

1. 启动数据库的全文处理功能(sp_fulltext_

database);;

2. 建立全文检索目录(sp_fulltext_catalog);

3.在全文检索目录中注册需要全文索引的表(sp_fulltext_table);

4. 指出表中需要全文检索的列名(sp_fulltext_

column);;

5. 为表创建全文索引(sp_fulltext_table);;

6. 填充全文检索目录(sp_fulltext_catalog)。

下面举例说明如何创建全文索引,在本例中,对Test数据库Book表中Title列和Notes列建立全文索引。

use test //打开数据库

//打开全文索引支持,启动SQL Server的全文搜索服务

execute sp_fulltext_database ‘enable’

//建立全文检索目录ft_test

execute sp_fulltext_catalog ‘ft_test’, ‘create’

为Title列建立全文索引数据元,pk_title为Book表中由主键所建立的唯一索引,这个参数是必需的。

execute sp_fulltext_table ‘book’,‘create’, ‘ft_test’,‘pk_title’

//设置全文索引列名

execute sp_fulltext_column ‘book’, ‘title’, ‘add’

execute sp_fulltext_column ‘book’,‘notes’, ‘add’

//建立全文索引

execute sp_fulltext_table ‘book’, ‘activate’

//填充全文索引目录

execute sp_fulltext_catalog ‘ft_test’, ‘start_full’

至此,全文索引建立完毕。

进行全文检索

SQL Server 2000提供的全文检索语句主要有CONTAINS和FREETEXT。CONTAINS语句的功能是在表的所有列或指定列中搜索:一个字或短语;一个字或短语的前缀;与一个字相近的另一个字;一个字的派生字;一个重复出现的字。

CONTAINS语句的语法格式为:

CONTAINS({column | *}), <contains_search

_condition>

论坛徽章:
0
3 [报告]
发表于 2003-11-12 16:18 |只看该作者
其中,column是搜索列,使用“*”时说明对表中所有全文索引列进行搜索。Contains_search_

condition 说明CONTAINS语句的搜索内容,其语法格式为:

{<simple_term>|<prefix_term>|<proximity_term>|<generation_term>|<weighted_term>}[{{AND|AND NOT|OR}<contains_search_condition>}] [...n]

下面就simple_term和prefix_term参数做简要说明:

simple_term是CONTAINS语句所搜索的单字或短语,当搜索的是一个短语时,必须使用双引号作为定界符。其格式为:

{‘word’|“ phrase”}

prefix_term说明CONTAINS语句所搜索的字或短语前缀,其格式为:

{“word*” | “phrase*”}

例如,下面语句检索Book表的Title列和Notes列中包含“database”或“computer”字符串的图书名称及其注释信息:

select title, notes

from book

where contains(tilte, ‘database’) or contains(notes,‘database’)

or contains(title,‘computer’) or contains(notes,‘computer’)

FREETEXT语句的功能是在一个表的所有列或指定列中搜索一个自由文本格式的字符串,并返回与该字符串匹配的数据行。所以,FREETEXT语句所执行的功能又称做自由式全文查询。

FREETEXT语句的语法格式为:FREETEXT({column | * },‘freetext_string’)

其中,column是被搜索列,使用“*”时说明对表中的所有全文索引列进行搜索。Freetext_string参数指出所搜索的自由文本格式字符串。

例如,下面语句使用FREETEXT语句搜索Book表中包含“Successful Life”字符串的数据行:

select title, notes

from book

where freetext(*,‘Successful Life’)

论坛徽章:
0
4 [报告]
发表于 2003-11-12 16:19 |只看该作者
SQL Server 7.0数据库的六种数据移动方法(1)  
  
[www.Googln.com 2002-9-11 7:58:40 ]  
  
本人从事的工作是数据库管理员,要维护多台服务器中的数据库,经常把某台服务器中的某个数据库移动到另外一台服务器,对数据的移动有些心得体会,希望和大家共同交流。
1. 通过工具DTS的设计器进行导入或导出
DTS的设计器功能强大,支持多任务,也是可视化界面,容易操作,但知道的人一般不多,如果只是进行SQL Server数据库中部分表的移动,用这种方法最好,当然,也可以进行全部表的移动。在SQL Server Enterprise Manager中,展开服务器左边的+,选择数据库,右击,选择All tasks/Import Data...(或All tasks/Export Data...),进入向导模式,按提示一步一步走就行了,里面分得很细,可以灵活的在不同数据源之间复制数据,很方便的。而且可以另存成DTS包,如果以后还有相同的复制任务,直接运行DTS包就行,省时省力。也可以直接打开DTS设计器,方法是展开服务器名称下面的Data Transformation Services,选Local Packages,在右边的窗口中右击,选New Package,就打开了DTS设计器。值得注意的是:如果源数据库要拷贝的表有外键,注意移动的顺序,有时要分批移动,否则外键主键,索引可能丢失,移动的时候选项旁边的提示说的很明白,或者一次性的复制到目标数据库中,再重新建立外键,主键,索引。
其实建立数据库时,建立外键,主键,索引的文件应该和建表文件分开,而且用的数据文件也分开,并分别放在不同的驱动器上,有利于数据库的优化。
2. 利用Bcp工具
这种工具虽然在SQL Server7的版本中不推荐使用,但许多数据库管理员仍很喜欢用它,尤其是用过SQL Server早期版本的人。Bcp有局限性,首先它的界面不是图形化的,其次它只是在SQL Server的表(视图)与文本文件之间进行复制,但它的优点是性能好,开销小,占用内存少,速度快。有兴趣的朋友可以查参考手册。
3. 利用备份和恢复
先对源数据库进行完全备份,备份到一个设备(device)上,然后把备份文件复制到目的服务器上(恢复的速度快),进行数据库的恢复操作,在恢复的数据库名中填上源数据库的名字(名字必须相同),选择强制型恢复(可以覆盖以前数据库的选项),在选择从设备中进行恢复,浏览时选中备份的文件就行了。这种方法可以完全恢复数据库,包括外键,主键,索引。
4. 直接拷贝数据文件
把数据库的数据文件(*.mdf)和日志文件(*.ldf)都拷贝到目的服务器,在SQL Server Query Analyzer中用语句进行恢复:
EXEC sp_attach_db @dbname = \'test\',
@filename1 = \'d:\\mssql7\\data\\test_data.mdf\',
@filename2 = \'d:\\mssql7\\data\\test_log.ldf\'
这样就把test数据库附加到SQL Server中,可以照常使用。如果不想用原来的日志文件,可以用如下的命令:
EXEC sp_detach_db @dbname = \'test\'
EXEC sp_attach_single_file_db @dbname = \'test\',
@physname = \'d:\\mssql7\\data\\test_data.mdf\'
这个语句的作用是仅仅加载数据文件,日志文件可以由SQL Server数据库自动添加,但是原来的日志文件中记录的数据就丢失了。

论坛徽章:
0
5 [报告]
发表于 2003-11-12 16:19 |只看该作者
SQL Server 7.0数据库的六种数据移动方法(2)  
  
[www.Googln.com 2002-9-11 7:58:40 ]  
  
5. 在应用程序中定制
可以在应用程序(PB、VB)中执行自己编写的程序,也可以在Query Analyzer中执行,这种方法比较灵活,其实是利用一个平台连接到数据库,在平台中用的主要时SQL语句,这种方法对数据库的影响小,但是如果用到远程链接服务器,要求网络之间的传输性能好,一般有两种语句:
1> select ... into new_tablename where ...
2> insert (into) old_tablename select ... from ... where ...
区别是前者把数据插入一个新表(先建立表,再插入数据),后者是把数据插入已经存在的一个表中,我个人喜欢后者,因为在编程的结构上,应用的范围上,第二条语句强于前者。
6. SQL Server的复制功能
SQL Server提供了强大的数据复制功能,也是最不易掌握的,具体应用请参考相关资料,值得注意的是要想成功进行数据的复制工作,有些条件是必不可少的:
1>SQL Server Agent必须启动,MSDTC必须启动。
2>所有要复制的表必须有主键。
3>如果表中有text或image数据类型,必须使用with log选项,不能使用with no_log选项。
另外max text repl size选项控制可以复制的文本和图像数据的最大规模,超过这个限制的操作将失败。
4>在要进行复制的计算机上,应该至少是隐含共享,即共享名是C$或D$…。
5>为SQL Server代理使用的Windows NT帐号不能是一个本地的系统帐号,因为本地的系统帐号不允许网络存取。
6>如果参与复制的服务器在另外的计算机域中,必须在这些域之间建立信任关系。

论坛徽章:
0
6 [报告]
发表于 2003-11-12 16:20 |只看该作者
把拷贝过的SQL Server 7数据库恢复的正确方法  
  
[www.Googln.com 2002-11-18 9:36:52 ]  
  
在SQL Server 7中由于MS重新设计了数据库文件的存储方式,取消了新建设备再建数据库这一繁琐的过程。新的存储格式,一个数据库包括两个文件,mdf数据库文件和ldf日志文件。所以我们在重装机器备份时可以把你要备份的数据库的这两个文件拷贝出来,重新安装之后再恢复。
  在SQL Server中提供了这种恢复方式的存储过程。
   1.sp_attach_db [@dbname =] \'dbname\',[@filename1 =] \'filename_n\'
    给系统添加一个数据库,在dbname指定数据库名称,filename_n指定数据库的文件和日志文件。比如我有一个voogiya的库,停止SQL Server服务备份voogiya_data.mdf,voogiya_log.ldf,启动SQL server,删除掉这个库,然后再把这两上文件拷到sql server DATA目录中,在Query Analyzer中执行如下语句:
   EXEC sp_attach_db @dbname = N\'voogiya\',
   @filename1 = N\'d:\\mssql7\\data\\voogiya_data.mdf\',
   @filename2 = N\'d:\\mssql7\\data\\voogiya_log.ldf\'
就会把这个库加入到SQL Server Group中.
   2.sp_attach_single_file_db [@dbname =] \'dbname\',
   [@physname =] \'physical_name\'
    这个命令和上面的功能一样,在physical_name中只要写上据库的物理文件名就可以了,日志文件SQL server会重新建立。这个存储过程的运行要先执行下面的存储过程:
    sp_detach_db @dbname = \'dbname\'
    同样以上面的为例:
    EXEC sp_detach_db @dbname = \'voogiya\'
    EXEC sp_attach_single_file_db @dbname = \'voogiya\',
   @physname = \'d:\\mssql7\\data\\voogiya_data.mdf\'
   

要注意执行以上存储过程的用户要在sysadmin中.

以上方法在windows Nt 4.0,service pack5,sql server 7.0上运行通过。

论坛徽章:
0
7 [报告]
发表于 2003-11-12 16:21 |只看该作者
Sql Server数据库备份的另类解决方案(1)  
  
[www.Googln.com 2002-11-18 9:39:26 ]  
  
一、背景
一旦系统正常运行以后,系统维护最主要工作就是数据安全与可恢复性。本方案(以下提到的数据库均指微软的Sql Server7.0或以上数据库)主要探讨数据库备份与恢复。
一般的数据备份解决方案无非是以下三种:(1)、磁带备份;(2)、双机热备份;(3)、手工备份。作为一般的中小型政府部门和企业采用磁带备份,代价太高,性能价格比不高;普遍采用的可能是双机热备份方案,但是用户可能依然不放心,还需要手工备份,把数据存放到一个与外界断绝联系的可控环境中,这种情况是普通存在的。所以作为双机热备份方案的辅助方案或者在条件限制的情况下,作为双机热备份的替代方案,有必要整理出一套手工备份方案。

二、设计思路
Sql Server数据库本身提供非常方便强大的备份功能(DTS),可以以向导的方式引导用户备份到本地局域网的机器或者远程的机器上,但是现在出现一个问题:就是一旦数据库大了的话,本地局域网备份速度可以接受,可是远程备份,尤其是拨号上网,速度就可能慢,一旦时间过长,网络可能断掉,又得重新备份,能否提出一种方案充分利用Sql Server数据库本身已有的备份功能(DTS),同时又解决备份速度慢的问题,考虑到数据库备份文件的可压缩比率非常高,可以直接对备份文件进行压缩操作,是否更有效率?
下面是设计思路,最后定型取决于两种方式效率的高低。

第一步:利用Sql Server本身带有的备份功能(DTS)把数据库全部或者差额定时备份到某个目录,一旦备份成功,这时候在指定的备份目录下有.bak文件存在;
第二步:利用公司自开发的解压缩组件RichZip把.bak文件压缩成另一个文件.zip文件,RichZip的压缩比等同于WinZip;
第三步:通过Http协议下载.zip文件到本地,按照不同的项目和日期保存;
第四步:如果需要恢复,把.zip文件解压缩成.bak文件,然后再用Sql Server的工具把备份文件恢复;

需要实验解决的几个问题:
1、在同一环境下,直接使用Sql Server的备份工具与这种方案所需要的时间哪一个更长?是否在不同量级里面有不同的结果?
2、是自己利用组件开发一个基于http协议的下载程序,还是直接采用其它的共享下载工具是否更有效率?比如说NetAnts(网络蚂蚁)或者其它下载工具。

说明:
1、该方案只在微软平台上做过实际操作:操作系统Window NT4.0或者以上(推荐使用Win2000),数据库Sql Server6.5或者以上(推荐使用Sql7.0)。

三、实际情况

3.1 实验结果

3.1.1 实验一结果:无论在哪种连接环境下,局域网还是拨号上网,直接使用Sql Server的备份工具与本方案的效率差距都比较大,只是由于数据库小时,直接使用Sql Server的备份工具比本方案方便一些。

以下是一些简单的、不完整的实际操作数据,仅供参考。

操作环境:联想56K调制解调器,上网速度52K,通过SysGate上网,平均3K左右。

库名        备份文件大小 压缩文件大小      下载时间
              Sql备份工具 本方案
SoftEnterPrise 27970Kb   2109Kb(13.26倍)  没有耐心等待,强行中断 12分钟
SoftProduct   10265Kb   739Kb(13.89倍) 18分钟        3分钟
SoftProductHz  11948Kb   930Kb(12.85倍)   25分钟        5分钟

论坛徽章:
0
8 [报告]
发表于 2003-11-12 16:21 |只看该作者
Sql Server数据库备份的另类解决方案(2)  
  
[www.Googln.com 2002-11-18 9:39:26 ]  
  
实际操作过程中是使用网络蚂蚁下载的,三个库的备份文件一共50MB,压缩后一共不到4MB;使用Sql备份工具,至少需要一个小时左右,而使用要方案最多不超过20分钟,这中间的效率是不可比拟的,还不包括在使用Sql备份工具时如果断网造成的延时。

3.1.2 实验二结果:建议使用专门的下载工具,如网络蚂蚁或者其它下载工具,是基于如下考虑:A、专门的下载工具功能强大,提供断点续传、多线程、定时下载等许多功能;B、许多用户都会使用,而且非常熟练,不需要再培训;C、比较稳定,如果自己要开发下载程序的话,一个是功能不强大,另外需要一段相当长的测试时间,需要投入时间与精力,不合算。如果是因为集成或者产品化的原因,可以考虑做一个相对简单的下载程序,与其它应用结合,或者开发一个管理备份文件的程序,管理起来比较方便。

3.2 服务器配置及源码
3.2.1 服务器端配置
3.2.1.1 Sql Server的配置:
-先建立Device(设备);
-然后备份具体的数据库到Device(设备)中,可以选择备份的时间及备份的方式;
重复上述操作,直到做好所有需要备份的数据库配置。
注意事项:
1、 备份文件存在的目录不要让用户能通过Http协议访问到;
2、 根据实际需要选择全额备份还是差额备份以及定时操作;
3、 如果系统备份以后,备份目录下就会出现.bak文件。
3.2.1.2 虚拟目录的配置
-为备份系统建立一个虚拟目录,如BackUp,一定要加上挑战反应,不允许匿名访问,这样访问时就需要输入系统管理员的用户名和密码,增强安全性。
3.3 源码
实现思路:为了保护数据的安全性,在3.2.1.2中要把备份系统的虚拟目录设成不允许匿名访问,需要系统管理员的密码;另外在3.2.1.1注意事项中1提到的不让备份文件存在的目录让用户能通过Http协议访问到,需要在生成下载文件后临时生成一个虚拟目录,下载完毕后再删除掉,确保安全。
一共包括四个文件,BackSet.asp、BuildvDir.asp、DelvDir.asp、BackList.asp。
-BackSet.asp:选择要建立临时下载虚拟目录的站点,同时临时给定下载虚拟目录的名称;
- BuildvDir.asp:根据BackSet.asp文件给定的站点和虚拟目录名称,建立虚拟目录;
-DelvDir.asp:删除在BackSet.asp文件给定的站点中的虚拟目录;
-BackList.asp:压缩备份文件,建立对应的被压缩后备份文件的下载链接;,
3.3.1 BackSet.asp文件解释
3.3.1.1 源码

<body bgcolor=\"#EEEEEC\">
<center>
<font size=4>生成或者删除**项目备份数据库虚拟目录</font>
</center>
<hr size=1>
<br>

<center>
<form name=\"BackForm\" method=\"ost\">
<table border=1 width=70%>
<tr>
<td width=40% align=center>
<font size=2>
请选择要使用的站点名称:
</font>
</td>
<td>
      <select Name=\"WebSiteIndex\">
      <%
      dim ObjServer

论坛徽章:
0
9 [报告]
发表于 2003-11-12 16:21 |只看该作者
dim obj3W
      dim sServerName
             set ObjService=GetObject(\"IIS://\" & Request.ServerVariables(\"SERVER_NAME\" & \"/W3SVC\"
      for each obj3w in objservice  
             if IsNumeric(obj3w.Name) then
                    sServerName=Obj3w.ServerComment  
                    if Instr(sServerName,\"管理 WEB 站点\" =0 then
                       sServerName=obj3w.Name & \"-\" & Obj3w.ServerComment
%>
                    <option value=\"<%=obj3w.Name%>\"><%=sServerName%>
<%
                    end if
             end if      
      next
      set ObjService=Nothing  
      %>  
      </select>
</td>  
</tr>
<tr>
      <td width=40% align=center>  
      <font size=2>
      请输入备份操作的虚拟目录名称:
      </font>  
      </td>
      <td>
      <input Type=text name=\"vDir\" value=\"SrrdBackUp\" size=42>  
      </td>
</tr>
</table>  
<br>
<br>
<input type=button Name=\"Build\" value=\"生成虚拟目录\">  
<input type=button Name=\"Del\" value=\"删除虚拟目录\">
</form>
</center>
</body>
</html>

<script language=vbs>
      Sub Build_Onclick()
      \'生成临时虚拟目录
             if Trim(document.BackForm.vDir.value)=\"\" then
                    msgbox \"请输入虚拟目录名称!\",16,\"错误\"
                    exit sub
             else
                    document.BackForm.action=\"BuildvDir.asp\"
                    document.BackForm.submit
             end if
      end sub
      Sub Del_Onclick()
      \'删除临时生成的虚拟目录
             if Trim(document.BackForm.vDir.value)=\"\" then

论坛徽章:
0
10 [报告]
发表于 2003-11-12 16:22 |只看该作者
Sql Server数据库备份的另类解决方案(4)  
  
[www.Googln.com 2002-11-18 9:39:26 ]  
  
msgbox \"请输入虚拟目录名称!\",16,\"错误\"
                    exit sub
             else
                    document.BackForm.action=\"DelvDir.asp\"
                    document.BackForm.submit
             end if
      end sub
</script>

说明:
1、 由于在实际过程中,经常是关闭缺省网站或者一台机器上有多个网站存在,提取IIS中站点,可以让使用者选择不同的站点下建立虚拟目录;
2、 要用代码对IIS进行操作,需要ADSI的配合;
3、 要对IIS进行操作,必须有系统管理员的权限,所以加挑战反应既是为了安全,也是实际需要。
3.3.1.2 界面,见图一


图一


3.3.2 BuildvDir.asp文件解释
3.3.2.1 源码

<%  
             dim iWWWIndex   \'站点顺序
             dim vDirName              \'虚拟目录名称
             dim pDirName              \'对应的物理目录名称
             dim sDefaultPage   \'虚拟目录使用的缺省页面名称
             \'获得要使用的站点顺序  
             iWWWIndex=Request.Form(\"WebSiteIndex\"
             \'获得要生成的虚拟目录名称  
             vDirName=Request.Form(\"vDir\"  
             \'当前文件物理路径  
             pDirName=request.servervariables(\"ath_Translated\"  
             pDirName=Left(pDirName,instrrev(pDirName,\"\\\"-1)  
             \'缺省页面名称  
             sDefaultPage=\"BackList.asp\"  
             if CreateVirtulDir(iWwwIndex,vDirName,pDirName,sDefaultPage)=false then  
             \'建立系统虚拟目录失败  
             %>  
                    <script language=vbs>  
                           msgbox \"创建虚拟目录失败!\",16,\"错误\"  
                           window.history.back  
                    </script>  
             <%                 
             else  
             %>  
                    <script language=vbs>
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP