我使用 SQL Server 2005,我尝试存储西里尔字符,但我无法通过尝试运行 SQL Server 来使用 SQL 代码:
INSERT INTO Assembly VALUES('Македонски парлиамент број 1','','');
或者从 C# 中发生了同样的问题,但是从 SQL Server 中插入/更新列它工作正常并且存储正常。
列的数据类型是nvarchar
。
最佳答案
您必须在字符串前添加 N 前缀。
当您隐式声明一个字符串变量时,它默认被视为 varchar。添加前缀 N 表示后续字符串是 Unicode (nvarchar)。
INSERT INTO Assembly VALUES(N'Македонски парлиамент број 1','','');
这里是一些读物:
http://databases.aspfaq.com/general/why-do-some-sql-strings-have-an-n-prefix.html
关于sql - 插入后 SQL 代码中的西里尔符号不正确,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16762021/