插入SQL Server时希腊编码的问题

gru*_*ber 1 sql-server sql-server-2005 notepad++

我有utf-8编码的文本文件,有超过2k行的insert命令.现在我想将它作为sql脚本执行,以将数据插入数据库.

有希腊文本有问题.插入后只有?字符,没有希腊字母.

样本插入语句如下:

INSERT INTO myDB.[MC_LIST] 
    ([id], [data], [author], [created], [language], [type_name], [position]) 
 VALUES 
    ('2086','<data><id>1</id><language>gr</language><szonelinkdest>/products/how-does-nioxin-works-page.aspx</szonelinkdest><szoneimgalt>alt</szoneimgalt><title>?????????? ????????? ??? ???????????</title><szoneimg>/m/photo/box-4.jpg</szoneimg><szonedesc>???? ?????? lala ???????? ???? ????????????? ????????? ?????????? ????????????? ??????????. </szonedesc><szonelinkname>?? ??????????? ???</szonelinkname><szonetitle>?????????? ????????? ??? ???????????</szonetitle></data>',null,'4/15/2011 3:47:47 PM','gr','1','2') ;
Run Code Online (Sandbox Code Playgroud)

怎么办才能让它发挥作用?

谢谢你的帮助.

顺便告诉您知道任何可以将utf-8文件转换为utf-16文件的软件吗?

小智 8

首先,您的目标列需要能够存储unicode数据.这些是nvarchar(),ntext,nchar.

其次,尝试将包含西里尔字符的字符串加前缀为N来表示unicode.

即:INSERT INTO表(列名)VALUES(N'yourstring')

希望有所帮助.