博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
[转]SQL SERVER 的排序规则
阅读量:4318 次
发布时间:2019-06-06

本文共 1360 字,大约阅读时间需要 4 分钟。

-- 增加复合主键语句

Alter Table tableName Add primary key (field1,field2)

Alter datebase Alter datebase 数据库 Chinese_PRC_BIN

ALTER TABLE tb 

ALTER COLUMN colname nvarchar(100) COLLATE Chinese_PRC_CI_AS 
--不区分大小写 
ALTER TABLE tb 
ALTER COLUMN colname nvarchar(100) COLLATE Chinese_PRC_CS_AS 
--区分大小写

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

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

update dbo.syscolumns set collationid=65572 where collationid=53284

EXEC sp_configure 'allow updates',0 RECONFIGURE WITH OVERRIDE 

go

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

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

/* 

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

if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[p_killspid]') and OBJECTPROPERTY(id, N'IsProcedure') = 1) 

drop procedure [dbo].[p_killspid] 
GO

create proc p_killspid 

@dbname varchar(200) --要关闭进程的数据库名 
as 
declare @sql nvarchar(500) 
declare @spid nvarchar(20)

declare #tb cursor for 

select spid=cast(spid as varchar(20)) from master..sysprocesses where dbid=db_id(@dbname) 
open #tb 
fetch next from #tb into @spid 
while @@fetch_status=0 
begin 
exec('kill ) 
fetch next from #tb into @spid 
end 
close #tb 
deallocate #tb 
go

--关闭用户连接 

exec p_killspid '数据库名' 
go

--修改排序规则 

Alter datebase Alter datebase 数据库名 Chinese_PRC_BIN

转载于:https://www.cnblogs.com/z5337/p/4107385.html

你可能感兴趣的文章
ng-深度学习-课程笔记-2: 神经网络中的逻辑回归(Week2)
查看>>
正则表达式的搜索和替换
查看>>
个人项目:WC
查看>>
地鼠的困境SSL1333 最大匹配
查看>>
flume+elasticsearch+kibana遇到的坑
查看>>
【MM系列】在SAP里查看数据的方法
查看>>
C#——winform
查看>>
CSS3 transform制作的漂亮的滚动式导航
查看>>
《小强升职记——时间管理故事书》读书笔记
查看>>
Alpha 冲刺(3/10)
查看>>
Kaldi中的Chain模型
查看>>
spring中的ResourceBundleMessageSource使用和测试示例
查看>>
css规范 - bem
查看>>
电梯调度程序的UI设计
查看>>
转自 zera php中extends和implements的区别
查看>>
Array.of使用实例
查看>>
【Luogu】P2498拯救小云公主(spfa)
查看>>
如何获取网站icon
查看>>
几种排序写法
查看>>
java 多线程的应用场景
查看>>