當客戶端與服務端代碼頁不兼容時,DB2連接會報錯 SQL0332N(Reason Code 1, SQLSTATE=57017),典型錯誤信息:
SQL0332N There is no available conversion for the source code page "819" to the target code page "1386".
此例中源代碼頁819 (ISO-8859-1) 與目標代碼頁1386 (簡體中文GBK) 不兼容,導致連接失敗。
在報錯的客戶端機器上,打開DB2命令窗口(需實例擁有者權限),依次執行:
db2set DB2CODEPAGE=1386 -i 實例名
db2 terminate
DB2CODEPAGE=1386:強制客戶端使用目標代碼頁(1386)進行連接。-i 實例名:指定實例,確保配置生效範圍正確。db2 terminate:終止後端進程,使環境變量立即生效。DB2CODEPAGE 可覆蓋客戶端默認代碼頁聲明。db2move 導出導入修復。重新執行 db2 connect to db_name,若無報錯且中文數據顯示正常,即修復成功。建議同步檢查應用程序連接字符串中是否顯式指定了 CODEPAGE 參數,避免雙重設置衝突。