DB2 涉及字符集的設定共有三個層級,各有不同的作用範圍與修改時機:
決定應用程式的預設代碼頁。
export LANG="zh_CN" 設為中文環境影響 DB2 相關應用程式在代碼頁轉換時的判定。
設定指令:
db2set DB2CODEPAGE=<代碼頁號>
例:db2set DB2CODEPAGE=1386(GBK),設定後需重啟實例生效。
必須在建庫時指定,事後無法修改。
建庫語法:
db2 "CREATE DATABASE dbname USING CODESET UTF-8 TERRITORY CN"
此例建立中文區域的 Unicode 資料庫,支援多國語言儲存。
| 層級 | 設定對象 | 可否事後修改 | 影響範圍 |
|---|---|---|---|
| OS Locale | 整個作業系統 | 可 | 所有應用程式預設編碼 |
| DB2CODEPAGE | DB2 實例 | 可(需重啟) | DB2 用戶端/伺服器轉換判定 |
| DATABASE CODEPAGE | 單一資料庫 | 不可 | 該資料庫資料儲存編碼 |
db2move 配合代碼頁轉換。