0

Microsoft SQL Server Migration Assistant を使用して 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データベースからエンコーディングを知るためのスナップです:

DROP TABLE IF EXISTS 6rp2_on; /*!40101 SET @saved_cs_client = @@character_set_client /; / !40101 SET character_set_client = utf8 /; CREATE TABLE 6rp2_on( sessionchar(100) NOT NULL DEFAULT '', timeint(11) NOT NULL DEFAULT '0' ) ENGINE=MyISAM DEFAULT CHARSET=latin1; / !40101 SET character_set_client = @saved_cs_client */;

--

-- テーブルのデータをダンプしています6rp2_on

6rp2_onテーブルの書き込みをロックします。/*!40000 ALTER TABLE6rp2_on無効化キー/; 値に挿入6rp2_on('',1381695068); / !40000 ALTER TABLE 6rp2_onENABLE KEYS */; テーブルのロックを解除します。

4

1 に答える 1