当我尝试执行此操作时:
INSERT INTO [DB_NAME].[dbo].[Table]
([Column])
VALUES('some_hebrew_characters')
我在列中只有问题标记。如果我将其更改为N' some_hebrew_characters' - 那好吧。为什么会这样?我怎样才能将它翻译成Linq?
如何使此表默认将所有数据视为Unicode?我的colum排序规则是Hebrew_CS_AI,服务器是SQL 2008 R2。
谢谢!
--- ---- EDIT
我刚才注意到的事情: 即使我跑这个SELECT 'some_hebrew_characters'
我在结果网格中得到问号
答案 0 :(得分:0)
您是否忘记将列标记为NVARCHAR?
答案 1 :(得分:0)
可能这是你的编辑器的默认编码不是unicode。
确保将查询保存为SQL SERVER Management Studio中的unicode文件并重新运行。
我认为如果你通过Linq得到结果那就合适了。
答案 2 :(得分:0)
你需要在''前加上字母N
插入包含unicode字符的值时,您需要执行以下操作:
insert into table_name(unicode_field) values (N'会意字')
没有N前缀,它们将作为ASCII字符传递。
另外,请确保要插入的列支持unicode字符 - 即nchar,nvarchar,ntext。