如何更改SQLSERVER2000的排序规则

AlterdatebaseAlterdatebase数据库Chinese_PRC_BIN

ALTERTABLEtb
ALTERCOLUMNcolnamenvarchar(100)COLLATEChinese_PRC_CI_AS
--不区分大小写
ALTERTABLEtb
ALTERCOLUMNcolnamenvarchar(100)COLLATEChinese_PRC_CS_AS
--区分大小写


使用如下命令,可以获得更多的规则:
SELECT*
FROM::fn_helpcollations()


更改数据库排序规则后,表中字段的排序规则仍然没变,如果在企业管理器中在设计表的界面去一个字段一个字段的改太累人了,
EXECsp_configure'allowupdates',1RECONFIGUREWITHOVERRIDE

updatedbo.syscolumnssetcollationid=65572wherecollationid=53284

EXECsp_configure'allowupdates',0RECONFIGUREWITHOVERRIDE
go


修改数据库的排序规则的时候,要确保你的数据库没有任何连接.

最好在查询分析器中用下面的方法,注意修改数据库名:

/*
关闭用户打开的进程处理
*/
usemaster
go

ifexists(select*fromdbo.sysobjectswhereid=object_id(N'[dbo].[p_killspid]')andOBJECTPROPERTY(id,N'IsProcedure')=1)
dropprocedure[dbo].[p_killspid]
GO

createprocp_killspid
@dbnamevarchar(200)--要关闭进程的数据库名
as
declare@sqlnvarchar(500)
declare@spidnvarchar(20)

declare#tbcursorfor
selectspid=cast(spidasvarchar(20))frommaster..sysprocesseswheredbid=db_id(@dbname)
open#tb
fetchnextfrom#tbinto@spid
while@@fetch_status=0
begin
exec('kill'+@spid)
fetchnextfrom#tbinto@spid
end
close#tb
deallocate#tb
go

--关闭用户连接
execp_killspid'数据库名'
go

--修改排序规则
AlterdatebaseAlterdatebase数据库名Chinese_PRC_BIN