文件首頁
MySQL Connector/NET 開發人員指南
相關文件 下載本手冊
PDF (美式 Letter) - 1.3Mb
PDF (A4) - 1.3Mb


MySQL Connector/NET 開發人員指南  /  Connector/NET 程式設計  /  Connector/NET 的字元集考量

5.16 Connector/NET 的字元集考量

將二進位 Blob 視為 UTF8

在引入 4 位元組 UTF-8 字元集之前,MySQL 不支援 4 位元組 UTF8 序列。這使得表示某些多位元組語言(例如日語)變得困難。為了嘗試緩解此問題,MySQL Connector/NET 支援一種模式,其中二進位 blob 可以視為字串。

若要執行此操作,您需要將 'Treat Blobs As UTF8' 連線字串關鍵字設定為 true。這就是啟用將所有二進位 blob 轉換為 UTF8 字串所需做的全部事情。若要僅轉換部分 BLOB 資料行,您可以利用 'BlobAsUTF8IncludePattern''BlobAsUTF8ExcludePattern' 關鍵字。將這些關鍵字設定為一個正規表示式模式,該模式分別符合要包含或排除的資料行名稱。

當正規表示式模式都符合單一資料行時,會先套用包含模式,再套用排除模式。在這種情況下,結果是排除該資料行。此外,請注意,此模式不適用於 BINARYVARBINARY 類型的資料行,也不適用於非二進位 BLOB 資料行。

此模式僅適用於從 MySQL 讀取字串。若要將 4 位元組 UTF8 字串插入 blob 資料行,請使用 .NET Encoding.GetBytes 函數將字串轉換為一系列位元組。然後,您可以將此位元組陣列設定為 BLOB 資料行的參數。