无法获得中文字符的确切值

时间:2016-03-30 10:46:01

标签: sql sql-server sql-server-2008 sql-server-2012

我有一个列有一些中文字符作为其值。当我将其值与BLANK进行比较时,它返回true。

当我将其值转换为VARCHAR时,它返回“????”。当我将其值转换为NVARCHAR时,它会再次返回BLANK。

如何获取列的确切值并按我的意愿使用它?

1 个答案:

答案 0 :(得分:0)

您是如何插入中文文本的?

如果您使用 -

INSERT INTO dbo.SomeTable(NVarcharColumn)
VALUES('Chinese stuff')

然后SQL会将文本转换为VARCHAR,unicode字符将丢失。

另一方面,如果你使用 -

INSERT INTO dbo.SomeTable(NVarcharColumn)
VALUES(N'Chinese stuff')

然后该列将包含您需要的文本。