数据库排序规则(Collate):Chinese_PRC_CI_AS
2013-01-12 15:10
666 查看
数据库的排序规则是个头疼的话题,常见使用的地方:
1.安装数据指定
2.建立数据库指定
3.建表指定
4.查询语句指定。
一般1.安装时候指定,一定要指定对,中文版和英文版是不一样的。2.生产服务器和测试服务器服务器数据库版本不一,考虑影响,考虑面向使用的用户,以及现有数据的字符集。3.查询语句也要指定,如果字符集不一样,必须强制指定同一种,语句才能执行。遇到过在一些连接条件的时候必须知道一种字符集才能有效 否则会提示字符集不统一还有就是数据库导入,从一个库的一个表到另外一个库的一个表,如果字符集不一样,是到不过去,比如用SSIS 一般是varchar 字段报错,在select 语句中用函数convert一下,在目标中换成nvarchar。
区别看建表语句:
CREATE TABLE [dbo].[excel_read]
(
[id] [int] NULL,
[name] [nvarchar] (100) COLLATE Chinese_PRC_CI_AS NULL
) ON [PRIMARY]
GO
INSERT INTO dbo.excel_read
( id, name )
VALUES ( 0, -- id - int
N'EXCEL' -- name - nvarchar(100)
)
INSERT INTO dbo.excel_read
( id, name )
VALUES ( 0, -- id - int
N'excel' -- name - nvarchar(100)
)
SELECT * FROM excel_read WHERE name='Excel'
对于[name] [nvarchar] (100) COLLATE Chinese_PRC_CI_AS NULL
Chinese_PRC:
prc(PRC),即中华人民共和国 的英语缩写(The People's Republic of China)。
CI:i ignore 忽略 C 是键盘上大写。
对于大小写就有2种可能
对于Chinese_PRC_CI_AS忽略大小写
对于不忽略大小写 查询的结果就不一定。
1.安装数据指定
2.建立数据库指定
3.建表指定
4.查询语句指定。
一般1.安装时候指定,一定要指定对,中文版和英文版是不一样的。2.生产服务器和测试服务器服务器数据库版本不一,考虑影响,考虑面向使用的用户,以及现有数据的字符集。3.查询语句也要指定,如果字符集不一样,必须强制指定同一种,语句才能执行。遇到过在一些连接条件的时候必须知道一种字符集才能有效 否则会提示字符集不统一还有就是数据库导入,从一个库的一个表到另外一个库的一个表,如果字符集不一样,是到不过去,比如用SSIS 一般是varchar 字段报错,在select 语句中用函数convert一下,在目标中换成nvarchar。
区别看建表语句:
CREATE TABLE [dbo].[excel_read]
(
[id] [int] NULL,
[name] [nvarchar] (100) COLLATE Chinese_PRC_CI_AS NULL
) ON [PRIMARY]
GO
INSERT INTO dbo.excel_read
( id, name )
VALUES ( 0, -- id - int
N'EXCEL' -- name - nvarchar(100)
)
INSERT INTO dbo.excel_read
( id, name )
VALUES ( 0, -- id - int
N'excel' -- name - nvarchar(100)
)
SELECT * FROM excel_read WHERE name='Excel'
对于[name] [nvarchar] (100) COLLATE Chinese_PRC_CI_AS NULL
Chinese_PRC:
prc(PRC),即中华人民共和国 的英语缩写(The People's Republic of China)。
CI:i ignore 忽略 C 是键盘上大写。
对于大小写就有2种可能
对于Chinese_PRC_CI_AS忽略大小写
对于不忽略大小写 查询的结果就不一定。
相关文章推荐
- 无法解决 equal to 运算中 \"Chinese_PRC_CI_AS\" 和 \"Chinese_PRC_CS_AS\" 之间的排序规则冲突。
- 无法解决 equal to 操作中 "SQL_Latin1_General_CP1_CI_AS" 和 "Chinese_PRC_CI_AS" 之间的排序规则冲突。
- 无法解决 equal to 操作中 "Chinese_PRC_CI_AS_WS" 和 "Chinese_PRC_CI_AS" 之间的排序规则冲突
- 无法解决 equal to 操作中 "Chinese_Taiwan_Stroke_CI_AS" 和 "Chinese_PRC_CI_AS" 之间的排序规则冲突。
- 由于 UNION ALL Chinese_PRC_CI_AS”之间的排序规则冲突,值的排序规则未经解析
- MSSQL排序规则 SQL_Latin1_General_CP1_CI_AS转换成Chinese_PRC_CI_AS 方法
- 由于 add 运算符中“Chinese_PRC_CI_AS”和“Chinese_PRC_CS_AS_WS”之间的排序规则冲突
- 无法解决 equal to 操作中 "SQL_Latin1_General_CP1_CI_AS" 和 "Chinese_PRC_CI_AS" 之间的排序规则冲突。
- 无法解决 equal to 运算中 "Chinese_PRC_CI_AS" 和 "Korean_Wansung_CI_AS" 之间的排序规则冲突。
- 无法解决 equal to 操作中 "Chinese_PRC_CI_AS" 和 "Korean_Wansung_CI_AS" 之间的排序规则冲突。
- equal to 操作的排序(Japanese_CI_AS和Chinese_PRC_CI_A)规则冲突的问题
- BOS打开单据的时候出现:无法解决 equal to 运算中 "Chinese_PRC_CS_AS" 和 "Chinese_PRC_CI_AS" 之间的排序规则冲突。
- 无法解决 equal to 操作中 "SQL_Latin1_General_CP1_CI_AS" 和 "Chinese_PRC_CI_AS" 之间的排序规则冲突。
- 无法解决 equal to 运算中 "Chinese_PRC_CI_AS" 和 "SQL_Latin1_General_CP1_CI_AS" 之间的排序规则冲突。
- 操作中 "Chinese_PRC_CI_AS" 和 "Chinese_PRC_CI_AI" 之间的排序规则冲突 的解决办法
- sqlserver2008查询语句报错 无法解决 equal to 运算中 "Chinese_PRC_BIN" 和 "Chinese_PRC_CI_AS" 之间的排序规则冲突
- Cannot resolve the collation conflict between "Chinese_PRC_CI_AS" and "SQL_L及由于排序规则不同导致查询结果为空的问题
- sql 排序规则 chinese_prc_ci_as【转】
- 无法解决 equal to 操作中 "Chinese_PRC_CI_AS" 和 "Chinese_PRC_BIN" 之间的排序规则冲突
- 无法解决 equal to 操作中 "SQL_Latin1_General_CP1_CI_AS" 和 "Chinese_PRC_CI_AS" 之间的排序规则冲突