我已经使用Microsoft SQL Server迁移助手将mysql数据库迁移到mssql 2008,但是仍然面临编码问题。
有没有办法读取每一行并将unicode转换为UTF-8或Windows-1252?
我正在使用以下功能:
Private Function GetDataWithArabic(ByVal srcData As String) As String
Dim iso As Encoding = Encoding.GetEncoding("windows-1252")
Dim unicode As Encoding = Encoding.[Default]
Dim unicodeBytes As Byte() = iso.GetBytes(srcData)
Return unicode.GetString(unicodeBytes)
End Function
数据如下所示,它假定显示阿拉伯文字:
ÇáãÌäÏÉÇáÅÓÑÇÆíáíÉ:ÓÃÓÊãÊÚÈÞÊáÇáÚÑÈæÐÈÈååã
下面是从原始mysql数据库了解到编码的快照:
如果存在则删除表6rp2_on
; / *!40101 SET @saved_cs_client = @@ character_set_client /; /!40101 SET character_set_client = utf8 /; CREATE TABLE 6rp2_on
(session
char(100)NOT NULL DEFAULT'',time
int(11)NOT NULL DEFAULT'0')ENGINE = MyISAM DEFAULT CHARSET = latin1; /!40101 SET character_set_client = @saved_cs_client * /;
--
6rp2_on
锁定表6rp2_on
写入;/ *!40000 ALTER TABLE 6rp2_on
DISABLE KEYS /; 插入6rp2_on
值('',1381695068); /!40000更改表6rp2_on
启用键* /; 解锁表;
Microsoft SQL Server读取数据的方式有所不同。您必须检查MS SQL Server使用哪种类型的数据格式,尤其是阿拉伯语,然后在传输之前确保要传输的数据采用该格式。查看本文以获取更多信息:
转到本节:
使用字符集映射控制将MySQL转换VARCHAR
为SQL Server VARCHAR
/NVARCHAR
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句