如何正确设置 Informix GLS 及 CSDK 语言环境 如何正确设置 Informix GLS 及 CSDK 语言环...

\u5982\u4f55\u6b63\u786e\u8bbe\u7f6e Informix GLS \u53ca CSDK \u8bed\u8a00\u73af\u5883

\u6982\u8ff0IBM Informix \u4ea7\u54c1\u53ef\u4ee5\u652f\u6301\u8bb8\u591a\u8bed\u8a00\u3001\u6587\u5316\u548c\u4ee3\u7801\u96c6\u3002\u6240\u6709\u7279\u5b9a\u4e8e\u6587\u5316\u7684\u4fe1\u606f\u6c47\u96c6\u4e8e\u5355\u4e2a\u73af\u5883\u4e2d\uff0c\u79f0\u4e3a Global Language Support \uff08GLS\uff09\u8bed\u8a00\u73af\u5883\u3002\u9664\u4e86 ASCII \u7f8e\u56fd\u82f1\u8bed\u4e4b\u5916\uff0cGLS \u5141\u8bb8\u60a8\u5728\u5176\u4ed6\u8bed\u8a00\u73af\u5883\u4e2d\u5de5\u4f5c\u5e76\u5728 SQL \u6570\u636e\u548c\u6807\u8bc6\u4e2d\u4f7f\u7528\u975e ASCII \u5b57\u7b26\u3002\u53ef\u4ee5\u4f7f\u7528 GLS \u529f\u80fd\u6765\u4e0e\u7279\u5b9a\u8bed\u8a00\u73af\u5883\u5b9a\u5236\u4fdd\u6301\u4e00\u81f4\u3002\u8bed\u8a00\u73af\u5883\u6587\u4ef6\u5305\u62ec\u7279\u5b9a\u4e8e\u6587\u5316\u7684\u4fe1\u606f\uff0c\u5982\u8d27\u5e01\u548c\u65e5\u671f\u683c\u5f0f\u4ee5\u53ca\u6574\u7406\u987a\u5e8f\u3002\u672c\u6587\u4ecb\u7ecd GLS \u76f8\u5173\u77e5\u8bc6\uff0c\u8bf4\u660e\u5982\u4f55\u6b63\u786e\u8bbe\u7f6e Informix GLS \u8bed\u8a00\u73af\u5883\u76f8\u5173\u53d8\u91cf\uff08DB_LOCALE, CLIENT_LOCALE\uff09\uff0c\u4fdd\u8bc1 Informix \u6570\u636e\u5e93\u670d\u52a1\u5668\u3001\u5ba2\u6237\u7aef\u80fd\u6b63\u786e\u7684\u652f\u6301\u4e2d\u6587\u5b57\u7b26\u548c\u652f\u6301\u4f7f\u7528\u4e2d\u6587\u7684\u5bf9\u8c61\u540d\u3002\u4ee5\u53ca\u8bf4\u660e\u5728 CSDK 2.7 \u4ee5\u4e0a\u7248\u672c\uff08\u5f53\u524d\u6700\u65b0\u7248\u672c\u4e3a CSDK 3.5\uff09\u4e2d\u5bf9\u8bed\u8a00\u73af\u5883\u8bbe\u7f6e\u7684\u8981\u6c42\u3002\u56de\u9875\u9996GLS \u57fa\u672c\u6982\u5ff5\u5b57\u7b26\uff08Character\uff09\u662f\u5404\u79cd\u6587\u5b57\u548c\u7b26\u53f7\u7684\u603b\u79f0\uff0c\u5305\u62ec\u5404\u56fd\u5bb6\u6587\u5b57\u3001\u6807\u70b9\u7b26\u53f7\u3001\u56fe\u5f62\u7b26\u53f7\u3001\u6570\u5b57\u7b49\u3002\u5b57\u7b26\u96c6\uff08Character set\uff09\u662f\u591a\u4e2a\u5b57\u7b26\u7684\u96c6\u5408\uff0c\u5b57\u7b26\u96c6\u79cd\u7c7b\u8f83\u591a\uff0c\u6bcf\u4e2a\u5b57\u7b26\u96c6\u5305\u542b\u7684\u5b57\u7b26\u4e2a\u6570\u4e0d\u540c\uff0c\u5e38\u89c1\u5b57\u7b26\u96c6\u540d\u79f0\uff1aASCII\u5b57\u7b26\u96c6\u3001GB2312\u5b57\u7b26\u96c6\uff08\u7b80\u4f53\u4e2d\u6587\uff09\u3001BIG5\u5b57\u7b26\u96c6\uff08\u7e41\u4f53\u4e2d\u6587\uff09\u3001 GB18030\u5b57\u7b26\u96c6\uff08\u4e9a\u6d32\u5b57\u7b26\u96c6\u5408\uff09\u3001Unicode( \u5e38\u7528 UTF-8) \u5b57\u7b26\u96c6\u7b49\u3002Informix GLS \u8bed\u8a00\u73af\u5883\u5bf9\u5e38\u7528\u7684\u5b57\u7b26\u96c6\u8fdb\u884c\u4e86\u547d\u540d\u53ca\u5185\u90e8\u7f16\u7801\uff08\u91c7\u7528 16 \u8fdb\u5236\u7f16\u7801\uff09\u7ba1\u7406\u3002\u901a\u8fc7\u670d\u52a1\u5668\u7aef\u7684\u6587\u4ef6\uff1a$InformixDIR/gls/cm3/registry \u67e5\u770b GLS \u5b57\u7b26\u540d\u79f0\u3001\u7f16\u7801\u5bf9\u7167\u8868\u3002\u793a\u4f8b\u5982\u4e0b\uff1a \u5b57\u7b26\u96c6\u540d\u79f0 \u7f16\u7801 \u5341\u516d\u8fdb\u5236\u7f16\u7801 8859-1 819 # 0x0333 gb 57357 # 0xe00d GB2312-80 57357 # 0xe00d utf8 57372 # 0xe01c big5 57352 # 0xe008 GB18030-2000 5488 # 0x1570 GLS \u73af\u5883\u4e2d\u4e0d\u540c\u5b57\u7b26\u96c6\u540d\u79f0\u53ef\u80fd\u5bf9\u5e94\u540c\u4e00\u4e2a\u5b57\u7b26\u96c6\u7f16\u7801\uff0c\u4f46\u4e00\u4e2a\u5b57\u7b26\u96c6\u53ea\u80fd\u6709\u4e00\u4e2a\u7f16\u7801\uff0c\u4e5f\u5c31\u662f\u8bf4\u5b57\u7b26\u96c6\u7f16\u7801\u624d\u662f\u552f\u4e00\u7684\u3002GLS \u73af\u5883\u4e2d\u6309\u7167\u8bed\u8a00\u548c\u5730\u533a\u628a\u6240\u652f\u6301\u7684\u5b57\u7b26\u96c6\u5206\u6210\u4e0d\u540c\u7684\u76ee\u5f55\u3002$InformixDIR/gls/lc11/ \u8bed\u8a00 _ \u5730\u533a /\uff0c\u5982\u4e2d\u6587\u5927\u9646\u5730\u533a\u7684\u76ee\u5f55\u4e3a\uff1a$InformixDIR/gls/lc11/zh_cn/\uff0c\u8be5\u76ee\u5f55\u4e0b\u6709\u5982\u4e0b\u4e24\u4e2a\u6587\u4ef6\uff1a1570.lco e00d.lco \uff0c\u8bf4\u660e\u6211\u4eec\u5728\u8bbe\u7f6e\u5b57\u7b26\u96c6\u65f6\uff0c\u6211\u4eec\u53ef\u4ee5\u4f7f\u7528 zh_cn.GB18030-2000 zh_cn.gb zh_cn.GB2312-80 \u4e09\u4e2a\u4e0d\u540c\u7684\u540d\u79f0\u3002\u8fd9\u91cc\uff08zh_cn.gb \u4e0e zh_cn.GB2312-80 \u5bf9\u5e94\u76f8\u540c\u7684\u5b57\u7b26\u96c6\uff09\u3002GLS \u73af\u5883\u4e2d\u4e0d\u540c\u7684\u5b57\u7b26\u96c6\u53ef\u4ee5\u6b63\u786e\u7684\u8fdb\u884c\u8f6c\u6362\uff0c\u67e5\u770b\u90a3\u4e9b\u5b57\u7b26\u96c6\u53ef\u4ee5\u6b63\u786e\u8f6c\u6362\u7684\u65b9\u6cd5\uff0c\u67e5\u770b\u76ee\u5f55 $InformixDIR/gls/cv9 \u76ee\u5f55\u4e0b\u7684\u662f\u5426\u5b58\u5728\u6307\u5b9a\u5b57\u7b26\u96c6\u4e92\u76f8\u8f6c\u6362\u7684\u6587\u4ef6\u3002\u5982\u8be5\u76ee\u5f55\u4e0b\u6709\u6587\u4ef6 e01ce00d.cvo \u548c e00de01c.cvo \u4e24\u4e2a\u6587\u4ef6\uff0c\u8868\u793a GLS \u901a\u8fc7\u8fd9\u4e24\u4e2a\u8f6c\u6362\u6587\u4ef6\u652f\u6301 UTF-8 \u4e0e GB \u4e4b\u95f4\u7684\u5b57\u7b26\u8f6c\u6362\u3002Informix \u901a\u8fc7 DB_LOCALE \u548c CLIENT_LOCALE \u6765\u8bbe\u7f6e\u6570\u636e\u5e93\u7684\u8bed\u8a00\u672c\u5730\u5316\u652f\u6301\u8bbe\u7f6e\u3002DB_LOCALE \u548c CLIENT_LOCALE \u7684\u503c\u7531\u56db\u90e8\u5206\u7ec4\u6210 ( \u7b2c 4 \u90e8\u5206\u4e3a\u53ef\u9009 )\uff0c\u5b57\u7b26\u96c6\u4e0d\u533a\u5206\u5927\u5c0f\u5199\u3002 1 2 3 4 _.[@modifier] \u4e3e\u4f8b\u8bf4\u660e : CLIENT_LOCALE=en_us.8859-1 CLIENT_LOCALE=en_us.819 # \u4ee5\u4e0a\u4e24\u4e2a\u4e3a\u540c\u4e00\u5b57\u7b26\u96c6\uff1a819 \u4e3a 8859-1 \u7684\u7f16\u7801 DB_LOCALE=zh_cn.gb \u56de\u9875\u9996GLS \u5b57\u7b26\u96c6\u5de5\u4f5c\u539f\u7406Informix \u6570\u636e\u5e93\u670d\u52a1\u5668\u7aef\u3001\u5ba2\u6237\u7aef\u5b57\u7b26\u96c6\u7684\u5de5\u4f5c\u539f\u7406\u793a\u610f\u56fe\u89c1\u56fe 1\u3002\u56fe1. IDS GLS \u5b57\u7b26\u96c6\u5904\u7406\u8fc7\u7a0b\u793a\u610f\u56feDB_LOCALE \u73af\u5883\u53d8\u91cf\u7528\u9014 \u5728\u5ba2\u6237\u673a\u5e94\u7528\u7a0b\u5e8f\u548c\u6570\u636e\u5e93\u670d\u52a1\u5668\u4ea4\u6362\u5b57\u7b26\u6570\u636e\u65f6\uff0c\u5982\u679c DB_LOCALE \u73af\u5883\u53d8\u91cf\uff08\u5728\u5ba2\u6237\u673a\u8ba1\u7b97\u673a\u4e0a\uff09\u7684\u503c\u4e0e CLIENT_LOCALE \u7684\u503c\u4e0d\u540c\uff0c\u5ba2\u6237\u673a\u5e94\u7528\u7a0b\u5e8f\u5c06\u6267\u884c\u4ee3\u7801\u96c6\u8f6c\u6362\u3002 \u4ee3\u7801\u96c6\u8f6c\u6362\u9632\u6b62\u8fd9\u4e24\u79cd\u4ee3\u7801\u96c6\u4e0d\u540c\u65f6\u53d1\u751f\u6570\u636e\u7834\u574f\u3002 \u5728\u5ba2\u6237\u673a\u5e94\u7528\u7a0b\u5e8f\u8bf7\u6c42\u8fde\u63a5\u65f6\uff0c\u5b83\u5c06\u5305\u62ec DB_LOCALE\uff08\u5982\u679c\u5df2\u8bbe\u7f6e\uff09\u7684\u4fe1\u606f\u53d1\u9001\u81f3\u6570\u636e\u5e93\u670d\u52a1\u5668\u3002 \u5728\u786e\u5b9a\u5982\u4f55\u8bbe\u7f6e\u670d\u52a1\u5668\u5904\u7406\u8bed\u8a00\u73af\u5883\u7684\u6570\u636e\u5e93\u4fe1\u606f\u65f6\uff0c\u6570\u636e\u5e93\u670d\u52a1\u5668\u4f7f\u7528 DB_LOCALE\u3002 \u5728\u5ba2\u6237\u673a\u5e94\u7528\u7a0b\u5e8f\u5c1d\u8bd5\u6253\u5f00\u6570\u636e\u5e93\u65f6\uff0c\u6570\u636e\u5e93\u670d\u52a1\u5668\u5c06\u5ba2\u6237\u673a\u5e94\u7528\u7a0b\u5e8f\u4f20\u9012\u7684 DB_LOCALE \u73af\u5883\u53d8\u91cf\u7684\u503c\u4e0e\u6570\u636e\u5e93\u4e2d\u5b58\u50a8\u7684\u6570\u636e\u5e93\u8bed\u8a00\u73af\u5883\u8fdb\u884c\u6bd4\u8f83\u3002 \u5f53\u6570\u636e\u5e93\u670d\u52a1\u5668\u5b58\u53d6\u4e0e\u8bed\u8a00\u73af\u5883\u76f8\u5173\u7684\u6570\u636e\u7c7b\u578b\u7684\u5217\u65f6\uff0c\u6570\u636e\u5e93\u670d\u52a1\u5668\u4f7f\u7528 DB_LOCALE \u6307\u5b9a\u7684\u8bed\u8a00\u73af\u5883\u3002 \u5f53\u6570\u636e\u5e93\u670d\u52a1\u5668\u521b\u5efa\u65b0\u6570\u636e\u5e93\u65f6\uff0c\u5b83\u5c06\u68c0\u67e5\u6570\u636e\u5e93\u8bed\u8a00\u73af\u5883\uff08DB_LOCALE\uff09\uff0c\u4ee5\u786e\u5b9a\u5982\u4f55\u5728\u6570\u636e\u5e93\u7684\u7cfb\u7edf\u76ee\u5f55\u4e2d\u5b58\u50a8\u5b57\u7b26\u4fe1\u606f\u3002\u6b64\u4fe1\u606f\u5305\u62ec\u8bf8\u5982\u5982\u4f55\u5904\u7406\u6b63\u5219\u8868\u8fbe\u5f0f\u3001\u6bd4\u8f83\u5b57\u7b26\u4e32\u4ee5\u53ca\u786e\u4fdd\u4ee3\u7801\u96c6\u7684\u6b63\u786e\u4f7f\u7528\u7684\u64cd\u4f5c\u3002CLIENT_LOCALE \u73af\u5883\u53d8\u91cf\u7528\u9014 \u5728\u5ba2\u6237\u673a\u5e94\u7528\u7a0b\u5e8f\u548c\u6570\u636e\u5e93\u670d\u52a1\u5668\u4ea4\u6362\u5b57\u7b26\u6570\u636e\u65f6\uff0c\u5982\u679c CLIENT_LOCALE \u73af\u5883\u53d8\u91cf\u7684\u4ee3\u7801\u96c6\u4e0e DB_LOCALE\uff08\u5728\u5ba2\u6237\u673a\u8ba1\u7b97\u673a\u4e0a\uff09\u7684\u4ee3\u7801\u96c6\u4e0d\u540c\uff0c\u5ba2\u6237\u673a\u5e94\u7528\u7a0b\u5e8f\u5c06\u6267\u884c\u4ee3\u7801\u96c6\u8f6c\u6362\u3002\u4ee3\u7801\u96c6\u8f6c\u6362\u9632\u6b62\u8fd9\u4e24\u79cd\u4ee3\u7801\u96c6\u4e0d\u540c\u65f6\u53d1\u751f\u6570\u636e\u7834\u574f\u3002 \u5728\u5ba2\u6237\u673a\u5e94\u7528\u7a0b\u5e8f\u8bf7\u6c42\u8fde\u63a5\u65f6\uff0c\u5b83\u5c06\u5305\u62ec CLIENT_LOCALE \u7684\u4fe1\u606f\u53d1\u9001\u81f3\u6570\u636e\u5e93\u670d\u52a1\u5668\u3002 \u5728\u786e\u5b9a\u5982\u4f55\u8bbe\u7f6e\u670d\u52a1\u5668\u5904\u7406\u8bed\u8a00\u73af\u5883\u7684\u5ba2\u6237\u673a\u5e94\u7528\u7a0b\u5e8f\u4fe1\u606f\u65f6\uff0c\u6570\u636e\u5e93\u670d\u52a1\u5668\u5c06\u4f7f\u7528 CLIENT_LOCALE\u3002 \u5728Informix ESQL/C \u7684\u9884\u5904\u7406\u5668\u5904\u7406\u6e90\u6587\u4ef6\u65f6\uff0c\u5b83\u63a5\u53d7\u4ee5 CLIENT_LOCALE \u7684\u4ee3\u7801\u96c6\u7f16\u5199\u7684 C \u6e90\u4ee3\u7801\u3002 \u5728 Informix ESQL/C \u5ba2\u6237\u673a\u5e94\u7528\u7a0b\u5e8f\u6267\u884c\u65f6\uff0c\u5c06\u68c0\u67e5 CLIENT_LOCALE \u4ee5\u83b7\u5f97\u5ba2\u6237\u673a\u8bed\u8a00\u73af\u5883\u7684\u540d\u79f0\uff0c\u8be5\u8bed\u8a00\u73af\u5883\u5c06\u5bf9\u64cd\u4f5c\u7cfb\u7edf\u6587\u4ef6\u540d\u3001\u6587\u672c\u6587\u4ef6\u7684\u5185\u5bb9\u4ee5\u53ca\u65e5\u671f\u3001\u65f6\u95f4\u548c\u6570\u5b57\u6570\u636e\u7684\u683c\u5f0f\u4ea7\u751f\u5f71\u54cd\u3002 \u5728\u6570\u636e\u5e93\u5b9e\u7528\u7a0b\u5e8f\u521b\u5efa\u6587\u4ef6\u65f6\uff0c\u6587\u4ef6\u540d\u548c\u6587\u4ef6\u5185\u5bb9\u4f4d\u4e8e CLIENT_LOCALE \u6307\u5b9a\u7684\u4ee3\u7801\u96c6\u4e2d\u3002\u5728\u67e5\u627e\u7279\u5b9a\u4e8e\u4ea7\u54c1\u7684\u6d88\u606f\u6587\u4ef6\u65f6\uff0c\u5ba2\u6237\u673a\u5e94\u7528\u7a0b\u5e8f\u5c06\u68c0\u67e5\u4e0e\u5ba2\u6237\u673a\u8bed\u8a00\u73af\u5883\u5173\u8054\u7684\u6d88\u606f\u76ee\u5f55\u3002\u56db\u4e2a\u8bed\u8a00\u73af\u5883\u7684\u542b\u4e49 \u5ba2\u6237\u673a\u8bed\u8a00\u73af\u5883\u2014 Client locale\u5ba2\u6237\u673a\u8bed\u8a00\u73af\u5883\u6307\u5b9a\u5ba2\u6237\u673a\u5e94\u7528\u7a0b\u5e8f\u7528\u4e8e\u6267\u884c\u8bfb\u548c\u5199\uff08I/O\uff09\u64cd\u4f5c\u7684\u8bed\u8a00\u3001\u5730\u57df\u548c\u4ee3\u7801\u96c6\u3002\u5728\u5ba2\u6237\u673a\u5e94\u7528\u7a0b\u5e8f\u4e2d\uff0cI/O \u64cd\u4f5c\u5305\u62ec\u8bfb\u53d6\u952e\u76d8\u8f93\u5165\u6216\u8981\u53d1\u9001\u81f3\u6570\u636e\u5e93\u7684\u6570\u636e\u6587\u4ef6\uff0c\u4ee5\u53ca\u5c06\u6570\u636e\u5e93\u670d\u52a1\u5668\u4ece\u6570\u636e\u5e93\u4e2d\u68c0\u7d22\u7684\u6570\u636e\u5199\u5165\u5c4f\u5e55\u3001\u6587\u4ef6\u6216\u6253\u5370\u673a\u3002 \u901a\u8fc7 CLIENT_LOCALE \u6765\u8bbe\u7f6e\u5ba2\u6237\u673a\u8bed\u8a00\u73af\u5883\u3002 \u6570\u636e\u5e93\u8bed\u8a00\u73af\u5883\u2014 Database locale\u901a\u8fc7DB_LOCALE \u73af\u5883\u53d8\u91cf\u8bbe\u7f6e\u7684\u6570\u636e\u5e93\u8bed\u8a00\u73af\u5883\u6307\u5b9a\u6570\u636e\u5e93\u670d\u52a1\u5668\u7528\u4e8e\u6b63\u786e\u89e3\u91ca\u7279\u5b9a\u6570\u636e\u5e93\u4e2d\u8bed\u8a00\u73af\u5883\u76f8\u5173\u7684\u6570\u636e\u7c7b\u578b\uff08NCHAR \u548c NVARCHAR\uff09\u6240\u9700\u7684\u8bed\u8a00\u3001\u5730\u57df\u548c\u4ee3\u7801\u96c6\u3002DB_LOCALE \u4e2d\u6307\u5b9a\u7684\u4ee3\u7801\u96c6\u786e\u5b9a\u54ea\u4e9b\u5b57\u7b26\u5728\u4efb\u4f55\u5b57\u7b26\u5217\u4e2d\u90fd\u662f\u6709\u6548\u7684\uff0c\u5e76\u4e14\u786e\u5b9a\u6570\u636e\u5e93\u5bf9\u8c61\uff08\u5982\u6570\u636e\u5e93\u3001\u8868\u3001\u5217\u548c\u89c6\u56fe\uff09\u7684\u540d\u79f0\u3002\u6570\u636e\u5e93\u670d\u52a1\u5668\u4f7f\u7528 DB_LOCALE \u73af\u5883\u53d8\u91cf\u6307\u5b9a\u7684\u6570\u636e\u5e93\u4ee3\u7801\u96c6\u5c06\u6570\u636e\u4f20\u5165\u548c\u4f20\u51fa\u6570\u636e\u5e93\u3002 \u670d\u52a1\u5668\u8bed\u8a00\u73af\u5883\u2014 Server locale\u6570\u636e\u5e93\u670d\u52a1\u5668\u4f7f\u7528 SERVER_LOCALE \u73af\u5883\u53d8\u91cf\u6307\u5b9a\u7684\u670d\u52a1\u5668\u4ee3\u7801\u96c6\u5199\u6587\u4ef6\uff08\u5982\u8c03\u8bd5\u548c\u8b66\u544a\u6587\u4ef6\uff09\u3002\u4f46\u662f\uff0c\u6570\u636e\u5e93\u670d\u52a1\u5668\u4e0d\u4f7f\u7528\u670d\u52a1\u5668\u8bed\u8a00\u73af\u5883\u6765\u5199\u5165\u91c7\u7528 Informix \u4e13\u7528\u683c\u5f0f\u7684\u6587\u4ef6\uff08\u6570\u636e\u5e93\u548c\u8868\u6587\u4ef6\uff09\u3002 \u670d\u52a1\u5668\u5904\u7406\u8bed\u8a00\u73af\u5883\u2014 Server processing locale\u6570\u636e\u5e93\u670d\u52a1\u5668\u4f7f\u7528\u6570\u636e\u5e93\u8bed\u8a00\u73af\u5883\u7684\u4ee3\u7801\u96c6\u4f5c\u4e3a\u670d\u52a1\u5668\u5904\u7406\u8bed\u8a00\u73af\u5883\u7684\u4ee3\u7801\u96c6 , \u4f7f\u7528\u670d\u52a1\u5668\u5904\u7406\u8bed\u8a00\u73af\u5883\u6765\u5199\u5165\u91c7\u7528 Informix \u4e13\u7528\u683c\u5f0f\u7684\u6587\u4ef6\uff08\u6570\u636e\u5e93\u548c\u8868\u6587\u4ef6\uff09\u3002\u4e5f\u5c31\u662f\u8bf4\u6570\u636e\u5e93\u670d\u52a1\u5668\u4f7f\u7528\u6570\u636e\u5e93\u8bed\u8a00\u73af\u5883\uff08DB_LOCALE\uff09\u6765\u5199\u5165\u91c7\u7528 Informix \u4e13\u7528\u683c\u5f0f\u7684\u6587\u4ef6\uff08\u6570\u636e\u5e93\u548c\u8868\u6587\u4ef6\uff09\u3002\u5efa\u7acb\u6570\u636e\u5e93\u8fde\u63a5\u8fc7\u7a0b\u5728\u5ba2\u6237\u673a\u5e94\u7528\u7a0b\u5e8f\u8bf7\u6c42\u4e0e\u6570\u636e\u5e93\u7684\u8fde\u63a5\u65f6\uff0c\u6570\u636e\u5e93\u670d\u52a1\u5668\u4f7f\u7528 GLS \u8bed\u8a00\u73af\u5883\u6267\u884c\u4ee5\u4e0b\u6b65\u9aa4\u3002 \u5ba2\u6237\u673a\u5e94\u7528\u7a0b\u5e8f\u53d1\u9001\u8bed\u8a00\u73af\u5883\u4fe1\u606f\u5230\u6570\u636e\u5e93\u670d\u52a1\u5668\u3002 CLIENT_LOCALE( \u672a\u8bbe\u7f6e\u5c06\u91c7\u7528\u9ed8\u8ba4 en_us.819)\uff1b DB_LOCALE( \u672a\u8bbe\u7f6e\u5219\u4e0d\u53d1\u9001 )\u3002 \u9a8c\u8bc1\u662f\u5426\u80fd\u591f\u5728\u5ba2\u6237\u673a\u5e94\u7528\u7a0b\u5e8f\u53ca\u5176\u8bf7\u6c42\u7684\u6570\u636e\u5e93\u4e4b\u95f4\u5efa\u7acb\u8fde\u63a5\u3002\u5bf9\u6bd4\u5982\u4e0b\u4e24\u4e2a\u8bed\u8a00\u73af\u5883\uff1a \u7531\u5ba2\u6237\u673a\u5e94\u7528\u7a0b\u5e8f\u53d1\u9001\u7684 DB_LOCALE \u6307\u5b9a\u7684\u8bed\u8a00\u73af\u5883\uff1b \u5b58\u50a8\u5728\u8bf7\u6c42\u6570\u636e\u5e93\u7684\u7cfb\u7edf\u76ee\u5f55\u4e2d\u7684\u6570\u636e\u5e93\u8bed\u8a00\u73af\u5883\u3002 \u5339\u914d\uff0c\u5219\u5efa\u7acb\u8fde\u63a5\u3002 \u4e0d\u5339\u914d\uff0c\u63d0\u793a\u65e0\u6cd5\u8fde\u63a5\u5230\u6570\u636e\u5e93\u3002\u6216\u8005\u53ef\u4ee5\u7ee7\u7eed\u8fdb\u884c\u8fd9\u6837\u7684\u8fde\u63a5\uff0c\u4f46\u662f\u6570\u636e\u5e93\u670d\u52a1\u5668\u53ef\u80fd\u4f1a\u4e0d\u6b63\u786e\u5730\u89e3\u91ca\u5b83\u4ece\u5ba2\u6237\u673a\u63a5\u6536\u5230\u7684\u6570\u636e\uff0c\u90a3\u4e48\u53ea\u80fd\u9760\u81ea\u5df1\u6765\u7406\u89e3\u4ea4\u6362\u4e2d\u6570\u636e\u7684\u683c\u5f0f\u3002 \u786e\u5b9a\u670d\u52a1\u5668\u5904\u7406\u8bed\u8a00\u73af\u5883\uff0c\u6309\u5982\u4e0b\u987a\u5e8f\u786e\u5b9a\u670d\u52a1\u5668\u5904\u7406\u8bed\u8a00\u73af\u5883\uff1a \u4f7f\u7528\u5ba2\u6237\u673a\u5b9a\u4e49\u7684 DB_LOCALE\uff1b \u6570\u636e\u5e93\u8bed\u8a00\u73af\u5883\u4e2d\u7684\u73af\u5883\u53d8\u91cf DB_LOCALE\u3002\u6267\u884c\u4ee3\u7801\u96c6\u8f6c\u6362\u5728\u5ba2\u6237\u673a / \u670d\u52a1\u5668\u73af\u5883\u4e2d\uff0c\u5982\u679c\u5ba2\u6237\u673a\u6216\u670d\u52a1\u5668\u8ba1\u7b97\u673a\u4f7f\u7528\u4e0d\u540c\u7684\u4ee3\u7801\u96c6\u6765\u8868\u793a\u76f8\u540c\u7684\u5b57\u7b26\uff0c\u90a3\u4e48\u9700\u8981\u5c06\u5b57\u7b26\u6570\u636e\u4ece\u4e00\u79cd\u4ee3\u7801\u96c6\u8f6c\u6362\u4e3a\u53e6\u4e00\u79cd\u4ee3\u7801\u96c6\u3002\u5982\u679c\u4e0d\u8fdb\u884c\u4ee3\u7801\u96c6\u8f6c\u6362\uff0c\u90a3\u4e48\u4e00\u53f0\u8ba1\u7b97\u673a\u65e0\u6cd5\u6b63\u786e\u5730\u5904\u7406\u6216\u663e\u793a\u6e90\u81ea\u53e6\u4e00\u53f0\u8ba1\u7b97\u673a\u7684\u5b57\u7b26\u6570\u636e\uff08\u5728\u8fd9\u4e24\u53f0\u8ba1\u7b97\u673a\u4f7f\u7528\u4e0d\u540c\u7684\u4ee3\u7801\u96c6\u65f6\uff09\u3002\u4f55\u65f6\u6267\u884c\u4ee3\u7801\u96c6\u8f6c\u6362\u53ea\u6709\u5728\u4e24\u4e2a\u4ee3\u7801\u96c6\uff08\u5ba2\u6237\u673a\u548c\u670d\u52a1\u5668\u5904\u7406\u8bed\u8a00\u73af\u5883\uff0c\u6216\u670d\u52a1\u5668\u5904\u7406\u8bed\u8a00\u73af\u5883\u548c\u670d\u52a1\u5668\uff09\u4e0d\u540c\u65f6\uff0c\u5e94\u7528\u7a0b\u5e8f\u624d\u5fc5\u987b\u4f7f\u7528\u4ee3\u7801\u96c6\u8f6c\u6362\u3002\u4ee5\u4e0b\u60c5\u51b5\u662f\u4ee3\u7801\u96c6\u4e0d\u540c\u7684\u53ef\u80fd\u539f\u56e0\uff1a \u4e0d\u540c\u7684\u64cd\u4f5c\u7cfb\u7edf\u53ef\u80fd\u4ee5\u4e0d\u540c\u7684\u65b9\u5f0f\u5bf9\u540c\u4e00\u5b57\u7b26\u8fdb\u884c\u7f16\u7801\u3002 \u5982\u679c\u5ba2\u6237\u673a\u8bed\u8a00\u73af\u5883\u548c\u6570\u636e\u5e93\u8bed\u8a00\u73af\u5883\u6307\u5b9a\u4e0d\u540c\u7684\u4ee3\u7801\u96c6\uff0c\u5ba2\u6237\u673a\u5e94\u7528\u7a0b\u5e8f\u5c06\u6267\u884c\u4ee3\u7801\u96c6\u8f6c\u6362\u4ee5\u4fbf\u670d\u52a1\u5668\u8ba1\u7b97\u673a\u4e0d\u4f1a\u88c5\u5165\u6b64\u7c7b\u578b\u7684\u5904\u7406\u3002 \u5982\u679c\u670d\u52a1\u5668\u8bed\u8a00\u73af\u5883\u548c\u670d\u52a1\u5668\u5904\u7406\u8bed\u8a00\u73af\u5883\u6307\u5b9a\u4e0d\u540c\u7684\u4ee3\u7801\u96c6\uff0c\u6570\u636e\u5e93\u670d\u52a1\u5668\u5c06\u5728\u5199\u5165\u548c\u8bfb\u53d6\u64cd\u4f5c\u7cfb\u7edf\u6587\u4ef6\uff08\u5982\u65e5\u5fd7\u6587\u4ef6\uff09\u65f6\u6267\u884c\u4ee3\u7801\u96c6\u8f6c\u6362\u3002\u8be5\u8f6c\u5316\u4e0d\u6d89\u53ca\u5230\u6570\u636e\u5e93\u6570\u636e\u7684\u95ee\u9898\u3002\u5728\u56fe1 \u4e2d\uff0c\u9ed1\u70b9\u8868\u793a\u5728\u5ba2\u6237\u673a / \u670d\u52a1\u5668\u73af\u5883\u4e2d\u53ef\u80fd\u53d1\u751f\u4ee3\u7801\u96c6\u8f6c\u6362\u7684\u4e24\u4e2a\u65f6\u523b\u3002\u5ba2\u6237\u673a\u5e94\u7528\u7a0b\u5e8f\u4ee3\u7801\u96c6\u8f6c\u6362\u5f53\u4ee5\u4e0b\u4e24\u4e2a\u6761\u4ef6\u90fd\u4e3a\u771f\u65f6\uff0c\u5ba2\u6237\u673a\u5e94\u7528\u7a0b\u5e8f\u81ea\u52a8\u5728\u5ba2\u6237\u673a\u548c\u6570\u636e\u5e93\u4ee3\u7801\u96c6\u4e4b\u95f4\u6267\u884c\u4ee3\u7801\u96c6\u8f6c\u6362\uff1a \u5ba2\u6237\u673a\u548c\u6570\u636e\u5e93\u8bed\u8a00\u73af\u5883\u7684\u4ee3\u7801\u96c6\u4e0d\u5339\u914d\u3002 \u5ba2\u6237\u673a\u548c\u6570\u636e\u5e93\u4ee3\u7801\u96c6\u4e4b\u95f4\u7684\u8f6c\u6362\u5b58\u5728\u6709\u6548\u7684\u76ee\u6807\u4ee3\u7801\u96c6\u8f6c\u6362\u3002\u5ba2\u6237\u673a\u5e94\u7528\u7a0b\u5e8f\u5f00\u59cb\u6267\u884c\u65f6\uff0c\u5b83\u4f1a\u6bd4\u8f83\u5ba2\u6237\u673a\u548c\u6570\u636e\u5e93\u8bed\u8a00\u73af\u5883\u7684\u540d\u79f0\uff0c\u4ee5\u786e\u5b9a\u662f\u5426\u6267\u884c\u4ee3\u7801\u96c6\u8f6c\u6362\u3002\u5982\u679c\u8bbe\u7f6e\u4e86 CLIENT_LOCALE \u548c DB_LOCALE \u73af\u5883\u53d8\u91cf\uff0c\u90a3\u4e48\u5ba2\u6237\u673a\u5e94\u7528\u7a0b\u5e8f\u4f7f\u7528\u8fd9\u4e9b\u8bed\u8a00\u73af\u5883\u540d\u79f0\u6765\u5206\u522b\u786e\u5b9a\u5ba2\u6237\u673a\u548c\u6570\u636e\u5e93\u7684\u4ee3\u7801\u96c6\u3002\u5982\u679c\u672a\u8bbe\u7f6e CLIENT_LOCALE\uff08\u4e14\u672a\u8bbe\u7f6e DBNLS\uff09\uff0c\u90a3\u4e48\u5ba2\u6237\u673a\u5e94\u7528\u7a0b\u5e8f\u5047\u5b9a\u5ba2\u6237\u673a\u8bed\u8a00\u73af\u5883\u4e3a\u7f3a\u7701\u8bed\u8a00\u73af\u5883\u3002\u5982\u679c\u672a\u8bbe\u7f6e DB_LOCALE\uff08\u4e14\u672a\u8bbe\u7f6e DBNLS\uff09\uff0c\u90a3\u4e48\u5ba2\u6237\u673a\u5e94\u7528\u7a0b\u5e8f\u5047\u5b9a\u6570\u636e\u5e93\u8bed\u8a00\u73af\u5883\u4e0e\u5ba2\u6237\u673a\u8bed\u8a00\u73af\u5883\uff08CLIENT_LOCALE \u8bbe\u7f6e\u7684\u503c\uff09\u76f8\u540c\u3002\u5982\u679c\u5ba2\u6237\u673a\u548c\u6570\u636e\u5e93\u4ee3\u7801\u96c6\u76f8\u540c\uff0c\u90a3\u4e48\u65e0\u9700\u8fdb\u884c\u4ee3\u7801\u96c6\u8f6c\u6362\u3002\u4f46\u662f\uff0c\u5982\u679c\u4ee3\u7801\u96c6\u4e0d\u5339\u914d\uff0c\u5ba2\u6237\u673a\u5e94\u7528\u7a0b\u5e8f\u5fc5\u987b\u786e\u5b9a\u8fd9\u4e24\u4e2a\u4ee3\u7801\u96c6\u662f\u5426\u53ef\u8f6c\u6362\u3002\u5982\u679c\u5ba2\u6237\u673a\u53ef\u4ee5\u627e\u5230\u5173\u8054\u7684\u4ee3\u7801\u96c6\u8f6c\u6362\u6587\u4ef6\uff0c\u90a3\u4e48\u4e24\u4e2a\u4ee3\u7801\u96c6\u662f\u53ef\u8f6c\u6362\u7684\u3002\u8fd9\u4e9b\u4ee3\u7801\u96c6\u8f6c\u6362\u6587\u4ef6\u5fc5\u987b\u5b58\u5728\u4e8e\u5ba2\u6237\u673a\u8ba1\u7b97\u673a\u4e0a\u3002\u4e3e\u4f8b\u8bf4\u660e\uff1a \u5ba2\u6237\u673a\u5e94\u7528\u7a0b\u5e8f\uff1aCLIENT_LOCALE=en_us.1252 DB_LOCALE=en_us.8859-1 \u5ba2\u6237\u673a\u5e94\u7528\u7a0b\u5e8f\u786e\u5b9a\u5b83\u5fc5\u987b\u5728 Windows \u4ee3\u7801\u9875 1252\uff08\u5ba2\u6237\u673a\u8bed\u8a00\u73af\u5883\u4e2d\uff09\u548c ISO8859-1 \u4ee3\u7801\u96c6\uff08\u6570\u636e\u5e93\u8bed\u8a00\u73af\u5883\u4e2d\uff09\u4e4b\u95f4\u6267\u884c\u4ee3\u7801\u96c6\u8f6c\u6362\u3002\u82e5\u94fe\u63a5\u5177\u6709 GB(zh_cn.gb) \u8bed\u8a00\u73af\u5883\u7684\u6570\u636e\u5e93\uff0c\u90a3\u4e48\u6570\u636e\u5e93\u5c06\u8bbe\u7f6e SQLWARN \u8b66\u544a\uff0c\u539f\u56e0\u662f\u8bed\u8a00\u3001\u5730\u533a\u548c\u4ee3\u7801\u96c6\u4e0d\u540c\u3002\u5ba2\u6237\u673a\u5e94\u7528\u7a0b\u5e8f\u5c06\u4e0d\u6b63\u786e\u5730\u6267\u884c\u4ee3\u7801\u96c6\u8f6c\u6362\u3002\u5b83\u5c06\u7ee7\u7eed\u5728 Windows \u4ee3\u7801\u9875 1252 \u548c ISO8859-1 \u4e4b\u95f4\uff0c\u800c\u4e0d\u662f\u5728 Windows \u4ee3\u7801\u9875 1252 \u548c zh_cn.gb \u4e4b\u95f4\u8fdb\u884c\u8f6c\u6362\u3002\u8fd9\u79cd\u60c5\u51b5\u53ef\u80fd\u4f1a\u5bfc\u81f4\u6570\u636e\u7834\u574f\u3002\u5e94\u7528\u7a0b\u5e8f\u5c06\u4e0d\u4f1a\u7ee7\u7eed\u6b64\u94fe\u63a5\u3002 \u56de\u9875\u9996\u8bbe\u7f6e\u5b57\u7b26\u96c6Informix \u901a\u8fc7 DB_LOCALE \u548c CLIENT_LOCALE \u6765\u8bbe\u7f6e\u6570\u636e\u5e93\u7684\u8bed\u8a00\u672c\u5730\u5316\u652f\u6301\u8bbe\u7f6e\u3002\u6570\u636e\u5e93\u670d\u52a1\u7aef\u5728\u521b\u5efa\u6570\u636e\u5e93\u65f6\uff08\u4e3a\u4e86\u7edf\u4e00\u7cfb\u7edf\u6570\u636e\u5e93\u4e0e\u5e94\u7528\u6570\u636e\u5e93\u7684\u5b57\u7b26\u96c6\uff0c\u5728\u521b\u5efa\u6570\u636e\u5e93\u5b9e\u4f8b\u65f6\uff09\uff0c\u8bf7\u6309\u5982\u4e0b\u6b65\u9aa4\u8bbe\u7f6e\u6570\u636e\u5e93\u7684 DB_LOCALE \u503c\u3002 1. \u8bbe\u7f6e\u73af\u5883\u53d8\u91cf DB_LOCALE set DB_LOCALE=zh_cn.gb 2. \u521b\u5efa\u6570\u636e\u5e93 create database dbname 3. \u9a8c\u8bc1\u5f53\u524d\u6570\u636e\u5e93\u5b57\u7b26\u96c6 SELECT dbs_collate FROM sysmaster:sysdbslocale WHERE dbs_dbsname = \u2018 dbname \u2019 \u5ba2\u6237\u7aef\u5f53\u6211\u4eec\u4f7f\u7528 ODBC,JDBC \u8fde\u63a5\u6570\u636e\u5e93\u65f6\uff0c\u6211\u4eec\u9700\u8981\u5728\u8fde\u63a5\u4fe1\u606f\u4e2d\u6b63\u786e\u8bbe\u7f6e\u8bed\u8a00\u73af\u5883\u53d8\u91cf\uff1aDB_LOCALE \u548c CLIENT_LOCALE\u3002 \u8bbe\u7f6e\u8bed\u8a00\u73af\u5883\u53d8\u91cf DB_LOCALE=zh_cn.gb CLIENT_LOCALE=zh_cn.gb ODBC\uff1a\u4e0b\u56fe\u4e3a WINDOWS \u73af\u5883\u4e0b ODBC \u8bed\u8a00\u73af\u5883\u8bbe\u7f6e\u793a\u610f\u56fe\u3002\u56fe2. \u5728 ODBC \u4e2d\u8bbe\u7f6e\u8bed\u8a00\u73af\u5883UNIX \u73af\u5883\u4e0b\u9700\u8981\u5728 odbc.ini \u6587\u4ef6\u4e2d\u5b9a\u4e49\uff1a \u5728odbc.ini \u6587\u4ef6\u4e2d\u5b9a\u4e49\u5982\u4e0b\u4e24\u9879\u6570\u636e\u5e93\u8bed\u8a00\u73af\u5883\u53d8\u91cf DB_LOCALE=zh_cn.gb CLIENT_LOCALE=zh_cn.gb JDBC\uff1a\u5728\u4f7f\u7528 JDBC \u8fde\u63a5\u6570\u636e\u5e93\u65f6\uff0c\u6211\u4eec\u9700\u8981\u5728\u8fde\u63a5\u6570\u636e\u5e93\u7684 URL \u4e2d\u8bbe\u7f6e\u6570\u636e\u5e93\u8bed\u8a00\u73af\u5883\u53d8\u91cf\uff1aDB_LOCALE \u548c CLIENT_LOCALE\u3002\u793a\u4f8b\u5982\u4e0b\uff1a String url = "jdbc:Informix-sqli://10.127.1.11:8001/testdb: InformixSERVER=servername;user=user;password=password; DB_LOCALE=zh_CN.gb;CLIENT_LOCALE=zh_CN.gb"; \u56de\u9875\u9996\u5e38\u89c1\u5b57\u7b26\u96c6\u8bbe\u7f6e\u95ee\u9898\u5728Informix \u6570\u636e\u5e93\u5b57\u7b26\u96c6\u8bbe\u7f6e\u4e0e\u4f7f\u7528\u8fc7\u7a0b\uff0c\u6211\u4eec\u5e38\u4f1a\u9047\u5230\u4e00\u4e9b\u5b57\u7b26\u96c6\u76f8\u5173\u9519\u8bef\uff0c\u77e5\u9053\u4e86\u9519\u8bef\u4ea7\u751f\u7684\u539f\u56e0\uff0c\u5c31\u53ef\u4ee5\u5f88\u5bb9\u6613\u89e3\u51b3\u95ee\u9898\u3002\u8fd9\u91cc\u6211\u4eec\u603b\u7ed3\u4e86\u51e0\u79cd\u5e38\u89c1\u7684\u5b57\u7b26\u96c6\u8bbe\u7f6e\u76f8\u5173\u95ee\u9898\u3002Error -23101 Unable to load locale categories\u5f53\u8bbe\u7f6e\u7684 DB_LOCALE \u548c CLIENT_LOCALE \u7684\u5b57\u7b26\u96c6\u5bf9\u5e94\u7684\u4ee5\u4e0b\u6587\u4ef6\u4e0d\u5b58\u5728\u65f6\uff0c\u51fa\u73b0\u8be5\u9519\u8bef\u3002 - $InformixDIR/gls/lc11/DB_LOCALE's( \u8bed\u8a00 _ \u5730\u533a )/(db \u7684 16 \u8fdb\u5236\u7f16\u7801 ).lco - $InformixDIR/gls/lc11/CLIENT_LOCALE's( \u8bed\u8a00 _ \u5730\u533a )/( db \u7684 16 \u8fdb\u5236\u7f16\u7801 ).lco - $InformixDIR/gls/lc11/CLIENT_LOCALE's( \u8bed\u8a00 _ \u5730\u533a )/( client \u7684 16 \u8fdb\u5236\u7f16\u7801 ).lco\u4e3e\u4f8b\u8bf4\u660e\uff1a DB_LOCALE = en_us.utf8 #\uff08\u5bf9\u5e94\u7684 16 \u8fdb\u5236\u7f16\u7801\u4e3a\uff1ae01c\uff09 CLIENT_LOCALE = zh_cn.gb18030-2000 #\uff08\u5bf9\u5e94\u7684 16 \u8fdb\u5236\u7f16\u7801\u4e3a\uff1a1570\uff09\u4ee5\u4e0b 3 \u4e2a\u6587\u4ef6\u5fc5\u987b\u5b58\u5728\uff0c\u7f3a\u4efb\u610f\u6587\u4ef6\u5c06\u62a5 Error -23101\u3002 - $InformixDIR/gls/lc11/en_us/e01c.lco - $InformixDIR/gls/lc11/zh_cn/e01c.lco - $InformixDIR/gls/lc11/zh_cn/1570.lco Error -23104 Error opening required code-set conversion object file\u5f53\u8bbe\u7f6e\u7684 DB_LOCALE \u548c CLIENT_LOCALE \u7684\u5b57\u7b26\u96c6\u5bf9\u5e94\u7684\u4ee5\u4e0b\u8f6c\u6362\u6587\u4ef6\u4e0d\u5b58\u5728\u65f6\uff0c\u4f1a\u51fa\u73b0\u8be5\u9519\u8bef\u3002\u5f53\u7136\u53ea\u6709\u5f53 DB_LOCALE \u548c CLIENT_LOCALE \u7684\u5b57\u7b26\u96c6\u4e0d\u4e00\u81f4\u65f6\u624d\u4f1a\u9700\u8981\u8f6c\u6362\uff0c\u5982\u679c\u4e00\u81f4\u5219\u4e0d\u4f1a\u51fa\u73b0 -23104 \u9519\u8bef\u3002 - $InformixDIR/gls/cv9/ccccdddd.cvo - $InformixDIR/gls/cv9/ddddcccc.cvo \u5176\u4e2d\uff1acccc \u4e3a CLIENT_LOCALE \u5b57\u7b26\u96c6\u7f16\u7801\u5bf9\u5e94\u7684 16 \u8fdb\u5236\u503c dddd \u4e3a DB_LOCALE \u5b57\u7b26\u96c6\u7f16\u7801\u5bf9\u5e94\u7684 16 \u8fdb\u5236\u503c\u4e3e\u4f8b\u8bf4\u660e DB_LOCALE = en_us.utf8 #\uff08\u5bf9\u5e94\u7684 16 \u8fdb\u5236\u7f16\u7801\u4e3a\uff1ae01c\uff09 CLIENT_LOCALE = zh_cn.gb18030-2000 #\uff08\u5bf9\u5e94\u7684 16 \u8fdb\u5236\u7f16\u7801\u4e3a\uff1a1570\uff09\u4ee5\u4e0b 2 \u4e2a\u6587\u4ef6\u5fc5\u987b\u5b58\u5728\uff0c\u7f3a\u4efb\u610f\u6587\u4ef6\u5c06\u62a5 Error -23104\u3002 - $INFOMRIXDIR/gls/cv9/e01c1570.cvo - $INFOMRIXDIR/gls/cv9/1570e01c.cvo Error -23197 Database locale information mismatch\u5f53\u51fa\u73b0\u5982\u4e0b\u60c5\u51b5\u65f6\uff0c\u51fa\u73b0 -23197 \u9519\u8bef\u3002 \u5b9a\u4e49\u7684 DB_LOCALE \u503c\u4e0e\u6570\u636e\u5e93\u7684\u4f7f\u7528\u7684\u503c\uff08\u6570\u636e\u5e93\u521b\u5efa\u65f6\u4f7f\u7528\u7684 DB_LOCALE \u503c\uff09\u4e0d\u4e00\u81f4\uff1b \u901a\u8fc7SET COLLATION \u8bed\u53e5\u5b9a\u4e49 DB_LOCALE \u503c\u4e0e\u6570\u636e\u5e93\u7684\u4f7f\u7528\u503c\u4e0d\u4e00\u81f4 ;\u4e3e\u4f8b\u8bf4\u660e\uff1a \u6570\u636e\u5e93\u7684 LOCALE= en_us.8859-1 \u53ef\u4ee5\u901a\u8fc7\u5982\u4e0b SQL \u8bfb\u53d6\u5f53\u524d\u6570\u636e\u5e93\u7684 LOCALE \u503c SELECT dbs_collate FROM sysmaster:sysdbslocale WHERE dbs_dbsname = \u2018 dbname \u2019 \u5ba2\u6237\u7aef DB_LOCALE \u8bbe\u7f6e\u5982\u4e0b\uff08\u6ce8\u610f\uff1a\u5982\u679c\u6ca1\u6709\u8bbe\u7f6e DB_LOCALE\uff0c\u5c06\u4f7f\u7528\u5728\u670d\u52a1\u5668\u8ba1\u7b97\u673a\u4e0a\u8bbe\u7f6e\u7684 DB_LOCALE\uff09\uff0c\u5219\u4f1a\u51fa\u73b0 -23197 \u9519\u8bef DB_LOCALE = zh_cn.gb Error -201\uff0c-202 \u6570\u636e\u5e93\u63d0\u793a\u8bed\u6cd5\u9519\u8befError -201\uff0c-202 \u6570\u636e\u5e93\u63d0\u793a\u8bed\u6cd5\u9519\u8bef\uff0c\u4e0d\u652f\u6301\u4e2d\u6587\u5bf9\u8c61\u540d\uff0c\u5982\u4e2d\u6587\u8868\u540d\u3001\u5b57\u6bb5\u522b\u540d\u3001\u89c6\u56fe\u540d\u3002\u8be5\u7c7b\u9519\u8bef\u63d0\u793a\u539f\u56e0\u662f\u5f53\u524d\u6570\u636e\u5e93\u7684 DB_LOCALE \u8bbe\u7f6e\u95ee\u9898\u3002\u5982\u679c\u6570\u636e\u5e93\u7684 DB_LOCALE \u8bbe\u7f6e\u4e3a zh_cn.GB18030-2000\uff0c\u5219\u6570\u636e\u5e93\u5c31\u53ef\u4ee5\u652f\u6301\u4e2d\u6587\u5bf9\u8c61\u540d\u3002\u4e3e\u4f8b\u8bf4\u660e\uff1a DB_LOCALE = zh_cn.GB18030-2000 \u7684\u6570\u636e\u5e93\uff0c\u53ef\u4ee5\u652f\u6301\u5982\u4e0b\u4e2d\u6587\u5bf9\u8c61\u540d\uff0c\u5426\u5219\u5c06\u63d0\u793a\u8bed\u6cd5\u9519\u8bef\u3002 Select c1 \u7b2c\u4e00\u5217 from test_cn; Create table \u4e2d\u6587\u8868\u540d (c1 integer, \u4e2d\u6587\u5217\u540d integer); drop table \u4e2d\u6587\u8868\u540d ; \u82e5\u7c7b\u4f3c SQL \u4e0d\u80fd\u8fd0\u884c\uff0c\u8bf7\u6838\u67e5\u6570\u636e\u5e93\u7684 DB_LOCALE \u503c\u3002 SELECT dbs_collate FROM sysmaster:sysdbslocale WHERE dbs_dbsname = \u2018 dbname \u2019 \u4e71\u7801\u95ee\u9898Informix \u5b57\u7b26\u51fa\u73b0\u4e71\u7801\u95ee\u9898\uff0c\u6216\u8005\u4e0d\u80fd\u6b63\u786e\u663e\u793a\u4e2d\u6587\u5b57\u7b26\u3002\u95ee\u9898\u7684\u539f\u56e0\u662f\u5ba2\u6237\u7aef CLIENT_LOCALE \u8bbe\u7f6e\u7684\u503c\u4e0e DB_LOCALE \u503c\u4e0d\u4e00\u81f4\uff0c\u800c\u4e14\u4e24\u8005\u5bf9\u5e94\u7684\u5b57\u7b26\u96c6\u4e4b\u95f4\u4e0d\u80fd\u6b63\u786e\u8fdb\u884c\u8f6c\u6362\u3002\u9700\u8981\u91cd\u65b0\u8bbe\u7f6e CLIENT_LOCALE \u4e0e DB_LOCALE \u7684\u503c\uff0c\u786e\u4fdd\u4e24\u8005\u4e00\u81f4\u6216\u8005\u53ef\u4ee5\u6b63\u786e\u76f8\u4e92\u8f6c\u6362\u3002\u65f6\u95f4\u683c\u5f0f\u95ee\u9898Informix \u6570\u636e\u5e93\u7684\u65f6\u95f4\u683c\u5f0f\u7531\u6570\u636e\u5e93\u670d\u52a1\u5668\u7aef\u73af\u5883\u53d8\u91cf GL_DATE GL_DATETIME \u63a7\u5236\uff0c\u9ed8\u8ba4\u7684\u5b57\u7b26\u96c6\u4e0b\u9ed8\u8ba4\u7684\u65f6\u95f4\u683c\u5f0f\u4e3a\uff1a GL_DATE="%m/%d/%iy" DATETIME="%iY-%m-%d %H:%M:%S" \u4f46\u662f\uff0c\u5f53\u6211\u4eec\u8bbe\u7f6e\u4e86 DB_LOCALE \u4e3a zh_cn.gb \u7684\u60c5\u5f62\u4e0b\uff0c\u800c\u6ca1\u6709\u8bbe\u7f6e GL_DATE,DATETIME\uff0c\u5219\u65f6\u95f4\u683c\u5f0f\u4f1a\u91c7\u7528 CLIENT_LOCALE \u7684\u503c\uff0c\u5728 zh_cn.gb \u60c5\u51b5\u4e0b\uff0c\u4f1a\u51fa\u73b0\uff1a\u201c2009 \u5e74 10 \u6708 2 \u65e5\u201d\u7684\u65e5\u671f\u683c\u5f0f\uff0c\u5982\u679c\u6211\u4eec\u4e4b\u524d\u7cfb\u7edf\u91c7\u7528\u9ed8\u8ba4\u7684\u65f6\u95f4\u683c\u5f0f\u7684\u60c5\u51b5\u4e0b\uff0c\u5c31\u4f1a\u51fa\u73b0\u65f6\u95f4\u683c\u5f0f\u4e0d\u5339\u914d\u7684\u9519\u8bef\u3002\u5982\u679c\u6211\u4eec\u4ecd\u7136\u9700\u8981\u91c7\u7528\u9ed8\u8ba4\u7684\u65f6\u95f4\u683c\u5f0f\uff0c\u6211\u4eec\u9700\u8981\u5728\u6570\u636e\u5e93\u670d\u52a1\u7aef\u4fee\u6539\u65f6\u95f4\u683c\u5f0f\u73af\u5883\u53d8\u91cf\u5373\u53ef\uff1a GL_DATE="%m/%d/%iy" DATETIME="%iY-%m-%d %H:%M:%S" \u56de\u9875\u9996GLS \u5bf9 CSDK \u7248\u672c\u8981\u6c42CSDK2.8 \u53ca\u4ee5\u4e0a\u7248\u672c\u4e2d\uff08\u76ee\u524d\u6700\u65b0\u7248\u672c\u4e3a CSDK3.5\uff09\uff0c\u4e3a\u4e86\u6b63\u786e\u652f\u6301\u8bed\u8a00\u6587\u5b57\u7684\u5904\u7406\uff0cInformix GLS \u8bed\u8a00\u73af\u5883\u4e0b\u8981\u6c42\u6b63\u786e\u8bbe\u7f6e\u6570\u636e\u5e93\u670d\u52a1\u5668\u8bed\u8a00\u73af\u5883\u53ca\u5ba2\u6237\u7aef\u8bed\u8a00\u73af\u5883\u3002\u5728\u4e2d\u6587\u8bed\u8a00\u73af\u5883\u4e0b\uff0c\u6211\u4eec\u5e94\u8be5\u6309\u5982\u4e0b\u8981\u6c42\u8bbe\u7f6e\u670d\u52a1\u5668\u7aef\u548c\u5ba2\u6237\u7aef\u8bed\u8a00\u73af\u5883\u3002\u6570\u636e\u5e93\u670d\u52a1\u7aef\uff1a\u5728\u521b\u5efa\u6570\u636e\u5e93\u65f6\uff08\u4e3a\u4e86\u7edf\u4e00\u7cfb\u7edf\u6570\u636e\u5e93\u4e0e\u5e94\u7528\u6570\u636e\u5e93\u7684\u5b57\u7b26\u96c6\uff0c\u5728\u521b\u5efa\u6570\u636e\u5e93\u5b9e\u4f8b\u65f6\uff09\uff0c\u8bf7\u6309\u5982\u4e0b\u6b65\u9aa4\u8bbe\u7f6e\u6570\u636e\u5e93\u7684 DB_LOCALE \u503c\u3002 1. \u8bbe\u7f6e\u73af\u5883\u53d8\u91cf DB_LOCALE set DB_LOCALE=zh_cn.GB18030-2000 2. \u521b\u5efa\u6570\u636e\u5e93 create database dbname 3. \u9a8c\u8bc1\u5f53\u524d\u6570\u636e\u5e93\u5b57\u7b26\u96c6 SELECT dbs_collate FROM sysmaster:sysdbslocale WHERE dbs_dbsname = \u2018 dbname \u2019 \u5ba2\u6237\u7aef\uff1a\u5f53\u6211\u4eec\u4f7f\u7528 ODBC,JDBC \u8fde\u63a5\u6570\u636e\u5e93\u65f6\uff0c\u6211\u4eec\u9700\u8981\u5728\u8fde\u63a5\u4fe1\u606f\u4e2d\u6b63\u786e\u8bbe\u7f6e\u8bed\u8a00\u73af\u5883\u53d8\u91cf\uff1aDB_LOCALE \u548c CLIENT_LOCALE\u3002 \u8bbe\u7f6e\u8bed\u8a00\u73af\u5883\u53d8\u91cf DB_LOCALE=zh_cn.GB18030-2000 CLIENT_LOCALE=zh_cn.GB18030-2000 CSDK2.7 \u7248\u672c\uff0cIDS \u9ed8\u8ba4\u60c5\u51b5\u4e0b\u4f7f\u7528 Garbage In, Garbage Out \u6a21\u5f0f\u5904\u7406\u4e2d\u6587\u5b57\u7b26\uff0c\u82e5\u6570\u636e\u5e93\u670d\u52a1\u5668\u4e0a\u7684 DB_LOCALE \u91c7\u7528\u9ed8\u8ba4\u7684 en_us.8859-1 \u5b57\u7b26\u96c6\uff0c\u80fd\u591f\u6b63\u5e38\u652f\u6301\u4e2d\u6587\u5b57\u7b26\u3002\u4f46\u662f\u5347\u7ea7\u5230 CSDK2.8 \u53ca\u4ee5\u4e0a\u7248\u672c\u65f6\uff0c\u4e0d\u518d\u652f\u6301 Garbage In, Garbage Out \u6a21\u5f0f\uff0c\u5c06\u51fa\u73b0\u4e71\u7801\u95ee\u9898\u3002\u8be5\u60c5\u51b5\u4e0b\uff0c\u5efa\u8bae\u66f4\u6539\u6570\u636e\u5e93\u7684\u5b57\u7b26\u96c6\uff08\u8bbe\u7f6e DB_LOCALE=zh_cn.GB18030-2000\uff0c\u91cd\u65b0\u521b\u5efa\u6570\u636e\u5e93\uff09\uff0c\u7136\u540e\u6309\u672c\u6587\u4e2d\u63cf\u8ff0\u7684\u65b9\u6cd5\u8fdb\u884c DB_LOCALE \u4e0e CLIENT_LOCALE \u7684\u8bbe\u7f6e\u65b9\u6cd5\u8fdb\u884c\u5904\u7406\u3002\u82e5\u5728\u5b9e\u9645\u73af\u5883\u4e0b\u91cd\u5efa\u6570\u636e\u5e93\u6210\u672c\u592a\u9ad8\uff0c\u53ef\u4ee5\u8003\u8651\u5982\u4e0b\u6b65\u9aa4\u8fdb\u884c\u89e3\u51b3 ODBC \u652f\u6301\u4e2d\u6587\u7684\u95ee\u9898\u3002 \u6570\u636e\u5e93\u670d\u52a1\u5668\u7aef\uff1a 1. \u8bbe\u7f6e\u73af\u5883\u53d8\u91cf\uff1a IFMX_UNDOC_B168163=1 2. \u5c06 en_us.8859-1 \u5b57\u7b26\u96c6\u6587\u4ef6\u62f7\u8d1d\u5230 zh_cn \u76ee\u5f55\u4e0b cd $INFORMIXDIR/gls/lc11 cp ./en_us/0333.lco ./zh_cn 3. \u91cd\u65b0\u542f\u52a8 IDS \u5ba2\u6237\u7aef\uff1a\u8bbe\u7f6e\u8bed\u8a00\u73af\u5883\uff1a l DB_LOCALE=zh_cn.GB18030-2000 l CLIENT_LOCALE=zh_cn.GB18030-2000 \u5bf9\u4e8eJDBC \u6211\u4eec\u53ef\u4ee5\u901a\u8fc7 NEWCODESET \u6765\u89e3\u51b3\u8be5\u95ee\u9898\uff1a URLString = "jdbc:Informix-sqli://9.125.66.130:6346/dbname:InformixSERVER=servername; NEWCODESET=GB18030-2000,8859-1,819; CLIENT_LOCALE=en_US.8859-1;DB_LOCALE=en_US.8859-1;" \u56de\u9875\u9996\u603b\u7ed3\u5728\u7b80\u4f53\u4e2d\u6587\u5e94\u7528\u73af\u5883\u4e0b\uff0c\u8bf7\u4f7f\u7528 zh_cn.GB18030-2000 \u5b57\u7b26\u96c6\uff0c\u5728\u9700\u8981 unicode \u7684\u5e94\u7528\u73af\u5883\u4e0b\uff0c\u53ef\u4ee5\u91c7\u7528 en_us.utf8 \u5b57\u7b26\u96c6\u3002\u4e3e\u4f8b\u8bf4\u660e\uff1a\u91c7\u7528 zh_cn.GB18030-2000\u5b57\u7b26\u96c6 \u6570\u636e\u5e93\u670d\u52a1\u5668\u7aef\uff1a\u5728\u521b\u5efa\u6570\u636e\u5e93\u5b9e\u4f8b\u524d\uff0c\u8bbe\u7f6e\u73af\u5883\u53d8\u91cf DB_LOCALE=zh_cn.GB18030-2000 CLIENT_LOCALE=zh_cn.GB18030-2000 \u521b\u5efa\u6570\u636e\u5e93\u6570\u636e\u5e93\u5ba2\u6237\u7aef\u7aef\uff1a\u9700\u8981\u5728 setnet32\u3001ODBC\u3001JDBC \u8fde\u63a5\u4e2d\u914d\u7f6e DB_LOCALE=zh_cn.GB18030-2000 CLIENT_LOCALE=zh_cn.GB18030-2000 \u4e3e\u4f8b\u8bf4\u660e\uff1a\u91c7\u7528 utf8\u5b57\u7b26\u96c6 \u6570\u636e\u5e93\u670d\u52a1\u5668\u7aef\uff1a\u5728\u521b\u5efa\u6570\u636e\u5e93\u5b9e\u4f8b\u524d\uff0c\u8bbe\u7f6e\u73af\u5883\u53d8\u91cf DB_LOCALE=en_us.utf8 CLIENT_LOCALE= en_us.utf8 \u521b\u5efa\u6570\u636e\u5e93\u6570\u636e\u5e93\u5ba2\u6237\u7aef\u7aef\uff1a\u9700\u8981\u5728 setnet32\u3001ODBC\u3001JDBC \u8fde\u63a5\u4e2d\u914d\u7f6e DB_LOCALE= en_us.utf8 CLIENT_LOCALE= en_us.utf8 \u7279\u522b\u6ce8\u610f\uff0c\u5728\u5b89\u88c5\u6570\u636e\u5e93\u524d\u8bf7\u8bbe\u7f6e\u597d\u73af\u5883\u53d8\u91cf DB_LOCALE \u4e3a\u89c4\u5212\u7684\u5b57\u7b26\u96c6\uff0c\u56e0\u4e3a\u6570\u636e\u5e93\u4e00\u65e6\u521b\u5efa\u5c31\u4e0d\u80fd\u4fee\u6539\u5176\u5b57\u7b26\u96c6\uff0c\u9664\u975e\u91cd\u65b0\u521b\u5efa\u3002\u5728\u9ed8\u8ba4\u60c5\u51b5\u4e0b\u5c06\u91c7\u7528 en_us.8859-1\u3002\u53c2\u8003\u8d44\u6599 \u5b66\u4e60developerWorks Information Management \u4e13\u533a Informix \u4ea7\u54c1\u4e13\u9898\uff1a\u5b66\u4e60\u5173\u4e8e Informix \u6280\u672f\u6587\u7ae0\u3001\u4e0b\u8f7d\u3001\u4ea7\u54c1\u4fe1\u606f\u7b49\u7b49\u3002Informix product family\uff1a\u5728 Informix \u4e3b\u9875\u4e0a\u67e5\u627e\u5173\u4e8e Informix \u7684\u66f4\u591a\u4fe1\u606f\u3002IDS V11.50 Information Center\uff1a\u4e86\u89e3\u5173\u4e8e\u4f7f\u7528 IDS \u7cfb\u5217\u4ea7\u54c1\u548c\u7279\u6027\u7684\u4fe1\u606f\u3002\u968f\u65f6\u5173\u6ce8 developerWorks \u6280\u672f\u6d3b\u52a8\u548c\u7f51\u7edc\u5e7f\u64ad\u3002\u83b7\u5f97\u4ea7\u54c1\u548c\u6280\u672fIBM Informix Dynamic Server Developer Edition\uff1a\u83b7\u53d6 Informix Dynamic Server Developer Edition 11.5 \u7684\u514d\u8d39\u8bd5\u7528\u7248\u3002Informix product family trials and demos\uff1a\u8bc4\u4f30\u548c\u8bd5\u7528 Informix \u4ea7\u54c1\u7684\u8f6f\u4ef6\u3001\u9a71\u52a8\u7a0b\u5e8f\u548c\u8865\u4e01\u3002\u4f7f\u7528\u53ef\u76f4\u63a5\u4ece developerWorks \u4e0b\u8f7d\u7684 IBM \u4ea7\u54c1\u8bc4\u4f30\u8bd5\u7528\u7248\u8f6f\u4ef6\u6784\u5efa\u60a8\u7684\u4e0b\u4e00\u4e2a Linux \u5f00\u53d1\u9879\u76ee\u3002\u8ba8\u8bba\u53c2\u4e0e\u5e76\u52a0\u5165 Informix \u4e2d\u56fd\u7528\u6237\u7ec4\u7ec7 \u7684\u7f51\u7ad9\u3002\u5173\u4e8e\u4f5c\u8005\u5b59\u56fd\u8363\uff0c\u76ee\u524d\u5728 IBM Informix \u5f00\u53d1\u5b9e\u9a8c\u5ba4\u5de5\u4f5c\u3002\u4e3b\u8981\u4ece\u4e8b Informix \u5728\u4e2d\u56fd\u7684\u7814\u7a76\u3001\u5f00\u53d1\u53ca\u652f\u6301\u5de5\u4f5c\u3002\u5173\u95ed[x]\u5173\u4e8e\u62a5\u544a\u6ee5\u7528\u7684\u5e2e\u52a9\u62a5\u544a\u6ee5\u7528\u8c22\u8c22! \u6b64\u5185\u5bb9\u5df2\u7ecf\u6807\u8bc6\u7ed9\u7ba1\u7406\u5458\u6ce8\u610f\u3002\u5173\u95ed[x]\u5173\u4e8e\u62a5\u544a\u6ee5\u7528\u7684\u5e2e\u52a9\u62a5\u544a\u6ee5\u7528\u62a5\u544a\u6ee5\u7528\u63d0\u4ea4\u5931\u8d25\u3002 \u8bf7\u7a0d\u540e\u91cd\u8bd5\u3002\u5173\u95ed[x]developerWorks\uff1a\u767b\u5f55IBM ID\uff1a\u9700\u8981\u4e00\u4e2a IBM ID\uff1f\u5fd8\u8bb0IBM ID\uff1f\u5bc6\u7801\uff1a\u5fd8\u8bb0\u5bc6\u7801\uff1f\u66f4\u6539\u60a8\u7684\u5bc6\u7801 \u4fdd\u6301\u767b\u5f55\u3002\u5355\u51fb\u63d0\u4ea4\u5219\u8868\u793a\u60a8\u540c\u610fdeveloperWorks \u7684\u6761\u6b3e\u548c\u6761\u4ef6\u3002 \u4f7f\u7528\u6761\u6b3e \u5f53\u60a8\u521d\u6b21\u767b\u5f55\u5230 developerWorks \u65f6\uff0c\u5c06\u4f1a\u4e3a\u60a8\u521b\u5efa\u4e00\u4efd\u6982\u8981\u4fe1\u606f\u3002\u60a8\u5728developerWorks \u6982\u8981\u4fe1\u606f\u4e2d\u9009\u62e9\u516c\u5f00\u7684\u4fe1\u606f\u5c06\u516c\u5f00\u663e\u793a\u7ed9\u5176\u4ed6\u4eba\uff0c\u4f46\u60a8\u53ef\u4ee5\u968f\u65f6\u4fee\u6539\u8fd9\u4e9b\u4fe1\u606f\u7684\u663e\u793a\u72b6\u6001\u3002\u60a8\u7684\u59d3\u540d\uff08\u9664\u975e\u9009\u62e9\u9690\u85cf\uff09\u548c\u6635\u79f0\u5c06\u548c\u60a8\u5728 developerWorks \u53d1\u5e03\u7684\u5185\u5bb9\u4e00\u540c\u663e\u793a\u3002\u6240\u6709\u63d0\u4ea4\u7684\u4fe1\u606f\u786e\u4fdd\u5b89\u5168\u3002\u5173\u95ed[x]\u8bf7\u9009\u62e9\u60a8\u7684\u6635\u79f0\uff1a\u5f53\u60a8\u521d\u6b21\u767b\u5f55\u5230 developerWorks \u65f6\uff0c\u5c06\u4f1a\u4e3a\u60a8\u521b\u5efa\u4e00\u4efd\u6982\u8981\u4fe1\u606f\uff0c\u60a8\u9700\u8981\u6307\u5b9a\u4e00\u4e2a\u6635\u79f0\u3002\u60a8\u7684\u6635\u79f0\u5c06\u548c\u60a8\u5728 developerWorks \u53d1\u5e03\u7684\u5185\u5bb9\u663e\u793a\u5728\u4e00\u8d77\u3002\u6635\u79f0\u957f\u5ea6\u5728 3 \u81f3 31 \u4e2a\u5b57\u7b26\u4e4b\u95f4\u3002 \u60a8\u7684\u6635\u79f0\u5728 developerWorks \u793e\u533a\u4e2d\u5fc5\u987b\u662f\u552f\u4e00\u7684\uff0c\u5e76\u4e14\u51fa\u4e8e\u9690\u79c1\u4fdd\u62a4\u7684\u539f\u56e0\uff0c\u4e0d\u80fd\u662f\u60a8\u7684\u7535\u5b50\u90ae\u4ef6\u5730\u5740\u3002\u6635\u79f0\uff1a\uff08\u957f\u5ea6\u5728 3 \u81f3 31 \u4e2a\u5b57\u7b26\u4e4b\u95f4\uff09\u5355\u51fb\u63d0\u4ea4\u5219\u8868\u793a\u60a8\u540c\u610fdeveloperWorks \u7684\u6761\u6b3e\u548c\u6761\u4ef6\u3002 \u4f7f\u7528\u6761\u6b3e. \u6240\u6709\u63d0\u4ea4\u7684\u4fe1\u606f\u786e\u4fdd\u5b89\u5168\u3002

Informix \u901a\u8fc7 DB_LOCALE \u548c CLIENT_LOCALE \u6765\u8bbe\u7f6e\u6570\u636e\u5e93\u7684\u8bed\u8a00\u672c\u5730\u5316\u652f\u6301\u8bbe\u7f6e\u3002DB_LOCALE \u548c CLIENT_LOCALE \u7684\u503c\u7531\u56db\u90e8\u5206\u7ec4\u6210 ( \u7b2c 4 \u90e8\u5206\u4e3a\u53ef\u9009 )\uff0c\u5b57\u7b26\u96c6\u4e0d\u533a\u5206\u5927\u5c0f\u5199\u3002
_.

\u4e3e\u4f8b\u8bf4\u660e :
CLIENT_LOCALE=en_us.8859-1
CLIENT_LOCALE=en_us.819
# \u4ee5\u4e0a\u4e24\u4e2a\u4e3a\u540c\u4e00\u5b57\u7b26\u96c6\uff1a819 \u4e3a 8859-1 \u7684\u7f16\u7801
DB_LOCALE=zh_cn.gb

DB_LOCALE \u73af\u5883\u53d8\u91cf\u7528\u9014
\u5728\u5ba2\u6237\u673a\u5e94\u7528\u7a0b\u5e8f\u548c\u6570\u636e\u5e93\u670d\u52a1\u5668\u4ea4\u6362\u5b57\u7b26\u6570\u636e\u65f6\uff0c\u5982\u679c DB_LOCALE \u73af\u5883\u53d8\u91cf\uff08\u5728\u5ba2\u6237\u673a\u8ba1\u7b97\u673a\u4e0a\uff09\u7684\u503c\u4e0e CLIENT_LOCALE \u7684\u503c\u4e0d\u540c\uff0c\u5ba2\u6237\u673a\u5e94\u7528\u7a0b\u5e8f\u5c06\u6267\u884c\u4ee3\u7801\u96c6\u8f6c\u6362\u3002 \u4ee3\u7801\u96c6\u8f6c\u6362\u9632\u6b62\u8fd9\u4e24\u79cd\u4ee3\u7801\u96c6\u4e0d\u540c\u65f6\u53d1\u751f\u6570\u636e\u7834\u574f\u3002
\u5728\u5ba2\u6237\u673a\u5e94\u7528\u7a0b\u5e8f\u8bf7\u6c42\u8fde\u63a5\u65f6\uff0c\u5b83\u5c06\u5305\u62ec DB_LOCALE\uff08\u5982\u679c\u5df2\u8bbe\u7f6e\uff09\u7684\u4fe1\u606f\u53d1\u9001\u81f3\u6570\u636e\u5e93\u670d\u52a1\u5668\u3002
\u5728\u786e\u5b9a\u5982\u4f55\u8bbe\u7f6e\u670d\u52a1\u5668\u5904\u7406\u8bed\u8a00\u73af\u5883\u7684\u6570\u636e\u5e93\u4fe1\u606f\u65f6\uff0c\u6570\u636e\u5e93\u670d\u52a1\u5668\u4f7f\u7528 DB_LOCALE\u3002
\u5728\u5ba2\u6237\u673a\u5e94\u7528\u7a0b\u5e8f\u5c1d\u8bd5\u6253\u5f00\u6570\u636e\u5e93\u65f6\uff0c\u6570\u636e\u5e93\u670d\u52a1\u5668\u5c06\u5ba2\u6237\u673a\u5e94\u7528\u7a0b\u5e8f\u4f20\u9012\u7684 DB_LOCALE \u73af\u5883\u53d8\u91cf\u7684\u503c\u4e0e\u6570\u636e\u5e93\u4e2d\u5b58\u50a8\u7684\u6570\u636e\u5e93\u8bed\u8a00\u73af\u5883\u8fdb\u884c\u6bd4\u8f83\u3002
\u5f53\u6570\u636e\u5e93\u670d\u52a1\u5668\u5b58\u53d6\u4e0e\u8bed\u8a00\u73af\u5883\u76f8\u5173\u7684\u6570\u636e\u7c7b\u578b\u7684\u5217\u65f6\uff0c\u6570\u636e\u5e93\u670d\u52a1\u5668\u4f7f\u7528 DB_LOCALE \u6307\u5b9a\u7684\u8bed\u8a00\u73af\u5883\u3002
\u5f53\u6570\u636e\u5e93\u670d\u52a1\u5668\u521b\u5efa\u65b0\u6570\u636e\u5e93\u65f6\uff0c\u5b83\u5c06\u68c0\u67e5\u6570\u636e\u5e93\u8bed\u8a00\u73af\u5883\uff08DB_LOCALE\uff09\uff0c\u4ee5\u786e\u5b9a\u5982\u4f55\u5728\u6570\u636e\u5e93\u7684\u7cfb\u7edf\u76ee\u5f55\u4e2d\u5b58\u50a8\u5b57\u7b26\u4fe1\u606f\u3002\u6b64\u4fe1\u606f\u5305\u62ec\u8bf8\u5982\u5982\u4f55\u5904\u7406\u6b63\u5219\u8868\u8fbe\u5f0f\u3001\u6bd4\u8f83\u5b57\u7b26\u4e32\u4ee5\u53ca\u786e\u4fdd\u4ee3\u7801\u96c6\u7684\u6b63\u786e\u4f7f\u7528\u7684\u64cd\u4f5c\u3002
CLIENT_LOCALE \u73af\u5883\u53d8\u91cf\u7528\u9014
\u5728\u5ba2\u6237\u673a\u5e94\u7528\u7a0b\u5e8f\u548c\u6570\u636e\u5e93\u670d\u52a1\u5668\u4ea4\u6362\u5b57\u7b26\u6570\u636e\u65f6\uff0c\u5982\u679c CLIENT_LOCALE \u73af\u5883\u53d8\u91cf\u7684\u4ee3\u7801\u96c6\u4e0e DB_LOCALE\uff08\u5728\u5ba2\u6237\u673a\u8ba1\u7b97\u673a\u4e0a\uff09\u7684\u4ee3\u7801\u96c6\u4e0d\u540c\uff0c\u5ba2\u6237\u673a\u5e94\u7528\u7a0b\u5e8f\u5c06\u6267\u884c\u4ee3\u7801\u96c6\u8f6c\u6362\u3002\u4ee3\u7801\u96c6\u8f6c\u6362\u9632\u6b62\u8fd9\u4e24\u79cd\u4ee3\u7801\u96c6\u4e0d\u540c\u65f6\u53d1\u751f\u6570\u636e\u7834\u574f\u3002
\u5728\u5ba2\u6237\u673a\u5e94\u7528\u7a0b\u5e8f\u8bf7\u6c42\u8fde\u63a5\u65f6\uff0c\u5b83\u5c06\u5305\u62ec CLIENT_LOCALE \u7684\u4fe1\u606f\u53d1\u9001\u81f3\u6570\u636e\u5e93\u670d\u52a1\u5668\u3002
\u5728\u786e\u5b9a\u5982\u4f55\u8bbe\u7f6e\u670d\u52a1\u5668\u5904\u7406\u8bed\u8a00\u73af\u5883\u7684\u5ba2\u6237\u673a\u5e94\u7528\u7a0b\u5e8f\u4fe1\u606f\u65f6\uff0c\u6570\u636e\u5e93\u670d\u52a1\u5668\u5c06\u4f7f\u7528 CLIENT_LOCALE\u3002
\u5728 Informix ESQL/C \u7684\u9884\u5904\u7406\u5668\u5904\u7406\u6e90\u6587\u4ef6\u65f6\uff0c\u5b83\u63a5\u53d7\u4ee5 CLIENT_LOCALE \u7684\u4ee3\u7801\u96c6\u7f16\u5199\u7684 C \u6e90\u4ee3\u7801\u3002 \u5728 Informix ESQL/C \u5ba2\u6237\u673a\u5e94\u7528\u7a0b\u5e8f\u6267\u884c\u65f6\uff0c\u5c06\u68c0\u67e5 CLIENT_LOCALE \u4ee5\u83b7\u5f97\u5ba2\u6237\u673a\u8bed\u8a00\u73af\u5883\u7684\u540d\u79f0\uff0c\u8be5\u8bed\u8a00\u73af\u5883\u5c06\u5bf9\u64cd\u4f5c\u7cfb\u7edf\u6587\u4ef6\u540d\u3001\u6587\u672c\u6587\u4ef6\u7684\u5185\u5bb9\u4ee5\u53ca\u65e5\u671f\u3001\u65f6\u95f4\u548c\u6570\u5b57\u6570\u636e\u7684\u683c\u5f0f\u4ea7\u751f\u5f71\u54cd\u3002
\u5728\u6570\u636e\u5e93\u5b9e\u7528\u7a0b\u5e8f\u521b\u5efa\u6587\u4ef6\u65f6\uff0c\u6587\u4ef6\u540d\u548c\u6587\u4ef6\u5185\u5bb9\u4f4d\u4e8e CLIENT_LOCALE \u6307\u5b9a\u7684\u4ee3\u7801\u96c6\u4e2d\u3002\u5728\u67e5\u627e\u7279\u5b9a\u4e8e\u4ea7\u54c1\u7684\u6d88\u606f\u6587\u4ef6\u65f6\uff0c\u5ba2\u6237\u673a\u5e94\u7528\u7a0b\u5e8f\u5c06\u68c0\u67e5\u4e0e\u5ba2\u6237\u673a\u8bed\u8a00\u73af\u5883\u5173\u8054\u7684\u6d88\u606f\u76ee\u5f55\u3002
\u56db\u4e2a\u8bed\u8a00\u73af\u5883\u7684\u542b\u4e49
\u5ba2\u6237\u673a\u8bed\u8a00\u73af\u5883\u2014 Client locale
\u5ba2\u6237\u673a\u8bed\u8a00\u73af\u5883\u6307\u5b9a\u5ba2\u6237\u673a\u5e94\u7528\u7a0b\u5e8f\u7528\u4e8e\u6267\u884c\u8bfb\u548c\u5199\uff08I/O\uff09\u64cd\u4f5c\u7684\u8bed\u8a00\u3001\u5730\u57df\u548c\u4ee3\u7801\u96c6\u3002\u5728\u5ba2\u6237\u673a\u5e94\u7528\u7a0b\u5e8f\u4e2d\uff0cI/O \u64cd\u4f5c\u5305\u62ec\u8bfb\u53d6\u952e\u76d8\u8f93\u5165\u6216\u8981\u53d1\u9001\u81f3\u6570\u636e\u5e93\u7684\u6570\u636e\u6587\u4ef6\uff0c\u4ee5\u53ca\u5c06\u6570\u636e\u5e93\u670d\u52a1\u5668\u4ece\u6570\u636e\u5e93\u4e2d\u68c0\u7d22\u7684\u6570\u636e\u5199\u5165\u5c4f\u5e55\u3001\u6587\u4ef6\u6216\u6253\u5370\u673a\u3002 \u901a\u8fc7 CLIENT_LOCALE \u6765\u8bbe\u7f6e\u5ba2\u6237\u673a\u8bed\u8a00\u73af\u5883\u3002
\u6570\u636e\u5e93\u8bed\u8a00\u73af\u5883\u2014 Database locale
\u901a\u8fc7 DB_LOCALE \u73af\u5883\u53d8\u91cf\u8bbe\u7f6e\u7684\u6570\u636e\u5e93\u8bed\u8a00\u73af\u5883\u6307\u5b9a\u6570\u636e\u5e93\u670d\u52a1\u5668\u7528\u4e8e\u6b63\u786e\u89e3\u91ca\u7279\u5b9a\u6570\u636e\u5e93\u4e2d\u8bed\u8a00\u73af\u5883\u76f8\u5173\u7684\u6570\u636e\u7c7b\u578b\uff08NCHAR \u548c NVARCHAR\uff09\u6240\u9700\u7684\u8bed\u8a00\u3001\u5730\u57df\u548c\u4ee3\u7801\u96c6\u3002DB_LOCALE \u4e2d\u6307\u5b9a\u7684\u4ee3\u7801\u96c6\u786e\u5b9a\u54ea\u4e9b\u5b57\u7b26\u5728\u4efb\u4f55\u5b57\u7b26\u5217\u4e2d\u90fd\u662f\u6709\u6548\u7684\uff0c\u5e76\u4e14\u786e\u5b9a\u6570\u636e\u5e93\u5bf9\u8c61\uff08\u5982\u6570\u636e\u5e93\u3001\u8868\u3001\u5217\u548c\u89c6\u56fe\uff09\u7684\u540d\u79f0\u3002\u6570\u636e\u5e93\u670d\u52a1\u5668\u4f7f\u7528 DB_LOCALE \u73af\u5883\u53d8\u91cf\u6307\u5b9a\u7684\u6570\u636e\u5e93\u4ee3\u7801\u96c6\u5c06\u6570\u636e\u4f20\u5165\u548c\u4f20\u51fa\u6570\u636e\u5e93\u3002
\u670d\u52a1\u5668\u8bed\u8a00\u73af\u5883\u2014 Server locale
\u6570\u636e\u5e93\u670d\u52a1\u5668\u4f7f\u7528 SERVER_LOCALE \u73af\u5883\u53d8\u91cf\u6307\u5b9a\u7684\u670d\u52a1\u5668\u4ee3\u7801\u96c6\u5199\u6587\u4ef6\uff08\u5982\u8c03\u8bd5\u548c\u8b66\u544a\u6587\u4ef6\uff09\u3002\u4f46\u662f\uff0c\u6570\u636e\u5e93\u670d\u52a1\u5668\u4e0d\u4f7f\u7528\u670d\u52a1\u5668\u8bed\u8a00\u73af\u5883\u6765\u5199\u5165\u91c7\u7528 Informix \u4e13\u7528\u683c\u5f0f\u7684\u6587\u4ef6\uff08\u6570\u636e\u5e93\u548c\u8868\u6587\u4ef6\uff09\u3002
\u670d\u52a1\u5668\u5904\u7406\u8bed\u8a00\u73af\u5883\u2014 Server processing locale
\u6570\u636e\u5e93\u670d\u52a1\u5668\u4f7f\u7528\u6570\u636e\u5e93\u8bed\u8a00\u73af\u5883\u7684\u4ee3\u7801\u96c6\u4f5c\u4e3a\u670d\u52a1\u5668\u5904\u7406\u8bed\u8a00\u73af\u5883\u7684\u4ee3\u7801\u96c6 , \u4f7f\u7528\u670d\u52a1\u5668\u5904\u7406\u8bed\u8a00\u73af\u5883\u6765\u5199\u5165\u91c7\u7528 Informix \u4e13\u7528\u683c\u5f0f\u7684\u6587\u4ef6\uff08\u6570\u636e\u5e93\u548c\u8868\u6587\u4ef6\uff09\u3002\u4e5f\u5c31\u662f\u8bf4\u6570\u636e\u5e93\u670d\u52a1\u5668\u4f7f\u7528\u6570\u636e\u5e93\u8bed\u8a00\u73af\u5883\uff08DB_LOCALE\uff09\u6765\u5199\u5165\u91c7\u7528 Informix \u4e13\u7528\u683c\u5f0f\u7684\u6587\u4ef6\uff08\u6570\u636e\u5e93\u548c\u8868\u6587\u4ef6\uff09\u3002

GLS 基本概念
字符(Character)是各种文字和符号的总称,包括各国家文字、标点符号、图形符号、数字等。字符集(Character set)是多个字符的集合,字符集种类较多,每个字符集包含的字符个数不同,常见字符集名称:ASCII字符集、GB2312字符集(简体中文)、BIG5字符集(繁体中文)、 GB18030字符集(亚洲字符集合)、Unicode( 常用 UTF-8) 字符集等。
Informix GLS 语言环境对常用的字符集进行了命名及内部编码(采用 16 进制编码)管理。通过服务器端的文件:$InformixDIR/gls/cm3/registry 查看 GLS 字符名称、编码对照表。示例如下:
字符集名称 编码 十六进制编码
8859-1 819 # 0x0333
gb 57357 # 0xe00d
GB2312-80 57357 # 0xe00d
utf8 57372 # 0xe01c
big5 57352 # 0xe008
GB18030-2000 5488 # 0x1570

GLS 环境中不同字符集名称可能对应同一个字符集编码,但一个字符集只能有一个编码,也就是说字符集编码才是唯一的。
GLS
环境中按照语言和地区把所支持的字符集分成不同的目录。$InformixDIR/gls/lc11/ 语言 _ 地区
/,如中文大陆地区的目录为:$InformixDIR/gls/lc11/zh_cn/,该目录下有如下两个文件:1570.lco e00d.lco
,说明我们在设置字符集时,我们可以使用 zh_cn.GB18030-2000 zh_cn.gb zh_cn.GB2312-80
三个不同的名称。这里(zh_cn.gb 与 zh_cn.GB2312-80 对应相同的字符集)。
GLS
环境中不同的字符集可以正确的进行转换,查看那些字符集可以正确转换的方法,查看目录 $InformixDIR/gls/cv9
目录下的是否存在指定字符集互相转换的文件。如该目录下有文件 e01ce00d.cvo 和 e00de01c.cvo 两个文件,表示 GLS
通过这两个转换文件支持 UTF-8 与 GB 之间的字符转换。
Informix 通过 DB_LOCALE 和 CLIENT_LOCALE 来设置数据库的语言本地化支持设置。DB_LOCALE 和 CLIENT_LOCALE 的值由四部分组成 ( 第 4 部分为可选 ),字符集不区分大小写。
1 2 3 4
< 语言 >_< 国家和地区 >.< 字符集名 / 字符集编码 >[@modifier]

举例说明 :
CLIENT_LOCALE=en_us.8859-1
CLIENT_LOCALE=en_us.819
# 以上两个为同一字符集:819 为 8859-1 的编码
DB_LOCALE=zh_cn.gb

回页首
GLS 字符集工作原理
Informix 数据库服务器端、客户端字符集的工作原理示意图见图 1。
图 1. IDS GLS 字符集处理过程示意图
DB_LOCALE 环境变量用途
在客户机应用程序和数据库服务器交换字符数据时,如果 DB_LOCALE 环境变量(在客户机计算机上)的值与 CLIENT_LOCALE 的值不同,客户机应用程序将执行代码集转换。 代码集转换防止这两种代码集不同时发生数据破坏。
在客户机应用程序请求连接时,它将包括 DB_LOCALE(如果已设置)的信息发送至数据库服务器。
在确定如何设置服务器处理语言环境的数据库信息时,数据库服务器使用 DB_LOCALE。
在客户机应用程序尝试打开数据库时,数据库服务器将客户机应用程序传递的 DB_LOCALE 环境变量的值与数据库中存储的数据库语言环境进行比较。
当数据库服务器存取与语言环境相关的数据类型的列时,数据库服务器使用 DB_LOCALE 指定的语言环境。
当数据库服务器创建新数据库时,它将检查数据库语言环境(DB_LOCALE),以确定如何在数据库的系统目录中存储字符信息。此信息包括诸如如何处理正则表达式、比较字符串以及确保代码集的正确使用的操作。
CLIENT_LOCALE 环境变量用途
在客户机应用程序和数据库服务器交换字符数据时,如果 CLIENT_LOCALE 环境变量的代码集与 DB_LOCALE(在客户机计算机上)的代码集不同,客户机应用程序将执行代码集转换。代码集转换防止这两种代码集不同时发生数据破坏。
在客户机应用程序请求连接时,它将包括 CLIENT_LOCALE 的信息发送至数据库服务器。
在确定如何设置服务器处理语言环境的客户机应用程序信息时,数据库服务器将使用 CLIENT_LOCALE。
在 Informix ESQL/C 的预处理器处理源文件时,它接受以 CLIENT_LOCALE 的代码集编写的 C 源代码。 在
Informix ESQL/C 客户机应用程序执行时,将检查 CLIENT_LOCALE
以获得客户机语言环境的名称,该语言环境将对操作系统文件名、文本文件的内容以及日期、时间和数字数据的格式产生影响。
在数据库实用程序创建文件时,文件名和文件内容位于 CLIENT_LOCALE 指定的代码集中。在查找特定于产品的消息文件时,客户机应用程序将检查与客户机语言环境关联的消息目录。
四个语言环境的含义
客户机语言环境— Client locale
客户机语言环境指定客户机应用程序用于执行读和写(I/O)操作的语言、地域和代码集。在客户机应用程序中,I/O
操作包括读取键盘输入或要发送至数据库的数据文件,以及将数据库服务器从数据库中检索的数据写入屏幕、文件或打印机。 通过 CLIENT_LOCALE
来设置客户机语言环境。
数据库语言环境— Database locale
通过 DB_LOCALE 环境变量设置的数据库语言环境指定数据库服务器用于正确解释特定数据库中语言环境相关的数据类型(NCHAR 和
NVARCHAR)所需的语言、地域和代码集。DB_LOCALE
中指定的代码集确定哪些字符在任何字符列中都是有效的,并且确定数据库对象(如数据库、表、列和视图)的名称。数据库服务器使用 DB_LOCALE
环境变量指定的数据库代码集将数据传入和传出数据库。
服务器语言环境— Server locale
数据库服务器使用 SERVER_LOCALE 环境变量指定的服务器代码集写文件(如调试和警告文件)。但是,数据库服务器不使用服务器语言环境来写入采用 Informix 专用格式的文件(数据库和表文件)。
服务器处理语言环境— Server processing locale
数据库服务器使用数据库语言环境的代码集作为服务器处理语言环境的代码集 , 使用服务器处理语言环境来写入采用 Informix
专用格式的文件(数据库和表文件)。也就是说数据库服务器使用数据库语言环境(DB_LOCALE)来写入采用 Informix
专用格式的文件(数据库和表文件)。
建立数据库连接过程
在客户机应用程序请求与数据库的连接时,数据库服务器使用 GLS 语言环境执行以下步骤。
客户机应用程序发送语言环境信息到数据库服务器。

CLIENT_LOCALE( 未设置将采用默认 en_us.819);
DB_LOCALE( 未设置则不发送 )。
验证是否能够在客户机应用程序及其请求的数据库之间建立连接。
对比如下两个语言环境:
匹配,则建立连接。
不匹配,提示无法连接到数据库。或者可以继续进行这样的连接,但是数据库服务器可能会不正确地解释它从客户机接收到的数据,那么只能靠自己来理解交换中数据的格式。
由客户机应用程序发送的 DB_LOCALE 指定的语言环境;
存储在请求数据库的系统目录中的数据库语言环境。
确定服务器处理语言环境,按如下顺序确定服务器处理语言环境:

使用客户机定义的 DB_LOCALE;
数据库语言环境中的环境变量 DB_LOCALE。
执行代码集转换
在客户机 / 服务器环境中,如果客户机或服务器计算机使用不同的代码集来表示相同的字符,那么需要将字符数据从一种代码集转换为另一种代码集。如果不进行代码集转换,那么一台计算机无法正确地处理或显示源自另一台计算机的字符数据(在这两台计算机使用不同的代码集时)。
何时执行代码集转换
只有在两个代码集(客户机和服务器处理语言环境,或服务器处理语言环境和服务器)不同时,应用程序才必须使用代码集转换。以下情况是代码集不同的可能原因:
不同的操作系统可能以不同的方式对同一字符进行编码。
如果客户机语言环境和数据库语言环境指定不同的代码集,客户机应用程序将执行代码集转换以便服务器计算机不会装入此类型的处理。
如果服务器语言环境和服务器处理语言环境指定不同的代码集,数据库服务器将在写入和读取操作系统文件(如日志文件)时执行代码集转换。该转化不涉及到数据库数据的问题。
在图 1 中,黑点表示在客户机 / 服务器环境中可能发生代码集转换的两个时刻。
客户机应用程序代码集转换
当以下两个条件都为真时,客户机应用程序自动在客户机和数据库代码集之间执行代码集转换:
客户机和数据库语言环境的代码集不匹配。
客户机和数据库代码集之间的转换存在有效的目标代码集转换。
客户机应用程序开始执行时,它会比较客户机和数据库语言环境的名
称,以确定是否执行代码集转换。如果设置了 CLIENT_LOCALE 和 DB_LOCALE
环境变量,那么客户机应用程序使用这些语言环境名称来分别确定客户机和数据库的代码集。如果未设置 CLIENT_LOCALE(且未设置
DBNLS),那么客户机应用程序假定客户机语言环境为缺省语言环境。如果未设置 DB_LOCALE(且未设置
DBNLS),那么客户机应用程序假定数据库语言环境与客户机语言环境(CLIENT_LOCALE 设置的值)相同。
如果客户机和数据库代码集相同,那么无需进行代码集转换。但是,如果代码集不匹配,客户机应用程序必须确定这两个代码集是否可转换。如果客户机可以找到关联的代码集转换文件,那么两个代码集是可转换的。这些代码集转换文件必须存在于客户机计算机上。
举例说明:
客户机应用程序:CLIENT_LOCALE=en_us.1252 DB_LOCALE=en_us.8859-1
客户机应用程序确定它必须在 Windows 代码页 1252(客户机语言环境中)和
ISO8859-1 代码集(数据库语言环境中)之间执行代码集转换。
若链接具有 GB(zh_cn.gb) 语言环境的数据库,那么数据库将设置 SQLWARN 警告,原因是语言、地区和代码
集不同。客户机应用程序将不正确地执行代码集转换。
它将继续在 Windows 代码页 1252 和 ISO8859-1 之间,而不是在 Windows 代码页 1252 和 zh_cn.gb 之间进行
转换。这种情况可能会导致数据破坏。应用程序将不会继续此链接。

回页首
设置字符集
Informix 通过 DB_LOCALE 和 CLIENT_LOCALE 来设置数据库的语言本地化支持设置。
数据库服务端
在创建数据库时(为了统一系统数据库与应用数据库的字符集,在创建数据库实例时),请按如下步骤设置数据库的 DB_LOCALE 值。
1. 设置环境变量 DB_LOCALE
set DB_LOCALE=zh_cn.gb
2. 创建数据库 create database dbname
3. 验证当前数据库字符集
SELECT dbs_collate FROM sysmaster:sysdbslocale
WHERE dbs_dbsname = ‘ dbname ’

客户端
当我们使用 ODBC,JDBC 连接数据库时,我们需要在连接信息中正确设置语言环境变量:DB_LOCALE 和 CLIENT_LOCALE。
设置语言环境变量
DB_LOCALE=zh_cn.gb
CLIENT_LOCALE=zh_cn.gb

ODBC:
下图为 WINDOWS 环境下 ODBC 语言环境设置示意图。
图 2. 在 ODBC 中设置语言环境
UNIX 环境下需要在 odbc.ini 文件中定义:
在 odbc.ini 文件中定义如下两项数据库语言环境变量
DB_LOCALE=zh_cn.gb
CLIENT_LOCALE=zh_cn.gb

JDBC:
在使用 JDBC 连接数据库时,我们需要在连接数据库的 URL 中设置数据库语言环境变量:DB_LOCALE 和 CLIENT_LOCALE。示例如下:
String url = "jdbc:Informix-sqli://10.127.1.11:8001/testdb:
InformixSERVER=servername;user=user;password=password;
DB_LOCALE=zh_CN.gb;CLIENT_LOCALE=zh_CN.gb";

回页首
常见字符集设置问题
在 Informix 数据库字符集设置与使用过程,我们常会遇到一些字符集相关错误,知道了错误产生的原因,就可以很容易解决问题。这里我们总结了几种常见的字符集设置相关问题。
Error -23101 Unable to load locale categories
当设置的 DB_LOCALE 和 CLIENT_LOCALE 的字符集对应的以下文件不存在时,出现该错误。
- $InformixDIR/gls/lc11/DB_LOCALE's( 语言 _ 地区 )/(db 的 16 进制编码 ).lco
- $InformixDIR/gls/lc11/CLIENT_LOCALE's( 语言 _ 地区 )/( db 的 16 进制编码 ).lco
- $InformixDIR/gls/lc11/CLIENT_LOCALE's( 语言 _ 地区 )/( client 的 16 进制编码 ).lco
举例说明:
DB_LOCALE = en_us.utf8 #(对应的 16 进制编码为:e01c)
CLIENT_LOCALE = zh_cn.gb18030-2000 #(对应的 16 进制编码为:1570)
以下 3 个文件必须存在,缺任意文件将报 Error -23101。
- $InformixDIR/gls/lc11/en_us/e01c.lco
- $InformixDIR/gls/lc11/zh_cn/e01c.lco
- $InformixDIR/gls/lc11/zh_cn/1570.lco

Error -23104 Error opening required code-set conversion object file
当设置的 DB_LOCALE 和 CLIENT_LOCALE 的字符集对应的以下转换文件不存在时,会出现该错误。当然只有当 DB_LOCALE 和 CLIENT_LOCALE 的字符集不一致时才会需要转换,如果一致则不会出现 -23104 错误。
- $InformixDIR/gls/cv9/ccccdddd.cvo
- $InformixDIR/gls/cv9/ddddcccc.cvo

其中:cccc 为 CLIENT_LOCALE 字符集编码对应的 16 进制值
dddd 为 DB_LOCALE 字符集编码对应的 16 进制值
举例说明
DB_LOCALE = en_us.utf8 #(对应的 16 进制编码为:e01c)
CLIENT_LOCALE = zh_cn.gb18030-2000 #(对应的 16 进制编码为:1570)
以下 2 个文件必须存在,缺任意文件将报 Error -23104。
- $INFOMRIXDIR/gls/cv9/e01c1570.cvo
- $INFOMRIXDIR/gls/cv9/1570e01c.cvo

Error -23197 Database locale information mismatch
当出现如下情况时,出现 -23197 错误。
定义的 DB_LOCALE 值与数据库的使用的值(数据库创建时使用的 DB_LOCALE 值)不一致;
通过 SET COLLATION 语句定义 DB_LOCALE 值与数据库的使用值不一致 ;
举例说明:
数据库的 LOCALE= en_us.8859-1
可以通过如下 SQL 读取当前数据库的 LOCALE 值
SELECT dbs_collate FROM sysmaster:sysdbslocale WHERE dbs_dbsname = ‘ dbname ’
客户端 DB_LOCALE 设置如下(注意:如果没有设置 DB_LOCALE,将使用在服务器计算机上设置
的 DB_LOCALE),则会出现 -23197 错误
DB_LOCALE = zh_cn.gb

Error -201,-202 数据库提示语法错误
Error -201,-202 数据库提示语法错误,不支持中文对象名,如中文表名、字段别名、视图名。该类错误提示原因是当前数据库的 DB_LOCALE 设置问题。
如果数据库的 DB_LOCALE 设置为 zh_cn.GB18030-2000,则数据库就可以支持中文对象名。
举例说明:
DB_LOCALE = zh_cn.GB18030-2000 的数据库,可以支持如下中文对象名,否则将提示语法错误。
Select c1 第一列 from test_cn;
Create table 中文表名 (c1 integer, 中文列名 integer);
drop table 中文表名 ;
若类似 SQL 不能运行,请核查数据库的 DB_LOCALE 值。
SELECT dbs_collate FROM sysmaster:sysdbslocale WHERE dbs_dbsname = ‘ dbname ’

乱码问题
Informix
字符出现乱码问题,或者不能正确显示中文字符。问题的原因是客户端 CLIENT_LOCALE 设置的值与 DB_LOCALE
值不一致,而且两者对应的字符集之间不能正确进行转换。需要重新设置 CLIENT_LOCALE 与 DB_LOCALE
的值,确保两者一致或者可以正确相互转换。
时间格式问题
Informix 数据库的时间格式由数据库服务器端环境变量 GL_DATE GL_DATETIME 控制,默认的字符集下默认的时间格式为:
GL_DATE="%m/%d/%iy"
DATETIME="%iY-%m-%d %H:%M:%S"

但是,当我们设置了 DB_LOCALE 为
zh_cn.gb 的情形下,而没有设置 GL_DATE,DATETIME,则时间格式会采用 CLIENT_LOCALE 的值,在
zh_cn.gb 情况下,会出现:“2009 年 10 月 2
日”的日期格式,如果我们之前系统采用默认的时间格式的情况下,就会出现时间格式不匹配的错误。如果我们仍然需要采用默认的时间格式,我们需要在数据库服
务端修改时间格式环境变量即可:
GL_DATE="%m/%d/%iy"
DATETIME="%iY-%m-%d %H:%M:%S"

回页首
GLS 对 CSDK 版本要求
CSDK2.8 及以上版本中(目前最新版本为 CSDK3.5),为了正确支持语言文字的处理,Informix GLS 语言环境下要求正确设置数据库服务器语言环境及客户端语言环境。在中文语言环境下,我们应该按如下要求设置服务器端和客户端语言环境。
数据库服务端:
在创建数据库时(为了统一系统数据库与应用数据库的字符集,在创建数据库实例时),请按如下步骤设置数据库的 DB_LOCALE 值。
1. 设置环境变量 DB_LOCALE
set DB_LOCALE=zh_cn.GB18030-2000
2. 创建数据库 create database dbname
3. 验证当前数据库字符集
SELECT dbs_collate FROM sysmaster:sysdbslocale
WHERE dbs_dbsname = ‘ dbname ’

客户端:
当我们使用 ODBC,JDBC 连接数据库时,我们需要在连接信息中正确设置语言环境变量:DB_LOCALE 和 CLIENT_LOCALE。
设置语言环境变量
DB_LOCALE=zh_cn.GB18030-2000
CLIENT_LOCALE=zh_cn.GB18030-2000

CSDK2.7 版本,IDS 默认情况下使用
Garbage In, Garbage Out 模式处理中文字符,若数据库服务器上的 DB_LOCALE 采用默认的 en_us.8859-1
字符集,能够正常支持中文字符。但是升级到 CSDK2.8 及以上版本时,不再支持 Garbage In, Garbage Out
模式,将出现乱码问题。该情况下,建议更改数据库的字符集(设置
DB_LOCALE=zh_cn.GB18030-2000,重新创建数据库),然后按本文中描述的方法进行 DB_LOCALE 与
CLIENT_LOCALE 的设置方法进行处理。若在实际环境下重建数据库成本太高,可以考虑如下步骤进行解决 ODBC 支持中文的问题。
数据库服务器端:
1. 设置环境变量: IFMX_UNDOC_B168163=1
2. 将 en_us.8859-1 字符集文件拷贝到 zh_cn 目录下
cd $INFORMIXDIR/gls/lc11
cp ./en_us/0333.lco ./zh_cn
3. 重新启动 IDS
客户端:
设置语言环境:
l DB_LOCALE=zh_cn.GB18030-2000
l CLIENT_LOCALE=zh_cn.GB18030-2000

对于 JDBC 我们可以通过 NEWCODESET 来解决该问题:
URLString = "jdbc:Informix-sqli://9.125.66.130:6346/dbname:InformixSERVER=servername;
NEWCODESET=GB18030-2000,8859-1,819;
CLIENT_LOCALE=en_US.8859-1;DB_LOCALE=en_US.8859-1;"

在简体中文应用环境下,请使用 zh_cn.GB18030-2000 字符集,在需要 unicode 的应用环境下,可以采用 en_us.utf8 字符集。
举例说明:采用 zh_cn.GB18030-2000字符集
数据库服务器端:
在创建数据库实例前,设置环境变量
DB_LOCALE=zh_cn.GB18030-2000
CLIENT_LOCALE=zh_cn.GB18030-2000
创建数据库
数据库客户端端:
需要在 setnet32、ODBC、JDBC 连接中配置
DB_LOCALE=zh_cn.GB18030-2000
CLIENT_LOCALE=zh_cn.GB18030-2000

举例说明:采用 utf8字符集
数据库服务器端:
在创建数据库实例前,设置环境变量
DB_LOCALE=en_us.utf8
CLIENT_LOCALE= en_us.utf8
创建数据库
数据库客户端端:
需要在 setnet32、ODBC、JDBC 连接中配置
DB_LOCALE= en_us.utf8
CLIENT_LOCALE= en_us.utf8

特别注意,在安装数据库前请设置好环境变量 DB_LOCALE 为规划的字符集,因为数据库一旦创建就不能修改其字符集,除非重新创建。在默认情况下将采用 en_us.8859-1。

扩展阅读:如何检查wifi有人蹭网 ... inform sb 后面接什么 ... 自制wifi接收放大器 ... involve sb in sth ... wifi放大器设置教程 ... mapinfo无法在线地图 ... winform ui ... winform开发教程 ... mapinfo怎么添加在线地图 ...

本站交流只代表网友个人观点,与本站立场无关
欢迎反馈与建议,请联系电邮
2024© 车视网