Sql server 支持多语言排序/字符的SQL Server列
我有一个SQL Server数据库,其默认排序规则为Sql server 支持多语言排序/字符的SQL Server列,sql-server,internationalization,multilingual,collation,polish,Sql Server,Internationalization,Multilingual,Collation,Polish,我有一个SQL Server数据库,其默认排序规则为Latin1\u General\u CI\u AS。 我的表的列是nvarchar或ntext数据类型 该数据库是为一个网站,可以是多语言,必须支持至少波兰语,英语,后来也乌克兰和法语 我甚至在努力让它接受波兰文字。对于nvarchar/ntext类型的列,我可以手动将数据库中的字符串更改为使用波兰语特殊字符,但当使用insert或UPDATE语句时,特殊字符的重音会被去除 例如 最后在INSERT或UPDATE的第二列和第三列中出现“ase
Latin1\u General\u CI\u AS
。
我的表的列是nvarchar
或ntext
数据类型
该数据库是为一个网站,可以是多语言,必须支持至少波兰语,英语,后来也乌克兰和法语
我甚至在努力让它接受波兰文字。对于nvarchar/ntext
类型的列,我可以手动将数据库中的字符串更改为使用波兰语特殊字符,但当使用insert
或UPDATE
语句时,特殊字符的重音会被去除
例如
最后在INSERT
或UPDATE
的第二列和第三列中出现“aseón”和“acl”,因此会丢失原始字符
我尝试设置不同的排序规则,但即使字段具有Polish\u CS\u AS
它也不接受插入/更新时的波兰语字符
如何使数据库接受不同的语言字符?尝试:
插入一些表值(7,N'aś281;óń',N'aąćł',0.1,1)
如果您已经将相应的列设置为NVARCHAR
,并且由于没有指定需要插入哪些列,您尝试插入的值的总数等于表中的值。尝试:
插入一些_表值(7,N'aśęóń',N'aąćł',0.1,1)
如果您已经将相应的列设置为NVARCHAR
,并且由于没有指定需要插入哪些列,您尝试插入的值的总数等于表中的值。您应该使用值(7,N'aśęóN',N'aąłł',0.1,1)
(而且,您应该停止使用ntext
,而改用'nvarchar(max)来代替)尝试在列前面加上N,同时像插入一样插入到一些表值中(7,N'aśęóN',N'aąłł',0.1,1)
谢谢大家,它现在工作得很好。ntext
、text
和image
数据类型将在SQL Server的未来版本中删除。避免在新的开发工作中使用这些数据类型,并计划修改当前使用它们的应用程序。使用nvarchar(max)
,varchar(max)
,和varbinary(max)
。您应该使用值(7,N'aśęóN',N'aŕłł,0.1,1)
(而且,您应该停止使用ntext
,而改用'nvarchar(max)来代替)尝试在列前面加上N,同时像插入一样插入到一些表值(7,N'aśęęęóN',N'aęęęN',N',0.1,0.1,1)
谢谢大家,它现在工作得很好。ntext
、text
和image
数据类型将在SQL Server的未来版本中删除。避免在新的开发工作中使用这些数据类型,并计划修改当前使用它们的应用程序。使用nvarchar(max)
,varchar(max)
和变量二进制(最大值)
。
INSERT INTO Some_Table
VALUES( 7, 'aśęóń', 'ąćł', 0.1, 1)