Informix JDBC - 使用 JDBC 无法 运行 sql 更新,但是当 运行 使用 dbaccess 时正常
Informix JDBC - fail to run sql update using JDBC, but ok when run using dbaccess
要更新的值包含 1 个类似阿拉伯语的字符,即 x。
Unicode点数是U+0760(我从https://unicode.scarfboy.com/得到的)
如果 SQL 是 运行 使用 dbaccess 更新有效。
如果字符被替换为不同的阿拉伯字符,则更新在 JDBC 和 dbaccess 中都有效。 DB_LOCALE 是 en_US.utf8 。提前谢谢你。
table
create table tbl_demo_1
(
id serial not null,
address varchar(100),
primary key(id)
);
insert into tbl_demo_1 values (1,'somevalue');
SQL
update tbl_demo_1
set address2 = 'BT. 8 ݠ MAIN ROAD'
where id = 1;
OS, IDS, JDK, JDBC
- OS : 分OS 8
- IDS:IBM Informix 动态服务器版本 14.10.FC4W1DE
- JDK : 1.8.0_172
- JDBC: 4.10.14, 4.50.7
- SQL 客户:SQuirrel SQL 客户,SQL Workbench/J
在使用 UTF-8 Informix 数据库时,建议使用 ICU 库而不是 Informix GLS 库,因为 ICU 支持的范围更广。
要启用 ICU,请确保在启动服务器和创建数据库之前将 GL_USEGLU 环境变量设置为 1 或 4。
更多信息在这里:
https://informix.hcldoc.com/14.10/help/index.jsp?topic=%2Fcom.ibm.glsug.doc%2Fids_gug_063.htm
根据您的 API(如 JDBC 或 .NET),您可能还需要在连接字符串中包含 GL_USEGLU 才能正常工作。
要更新的值包含 1 个类似阿拉伯语的字符,即 x。 Unicode点数是U+0760(我从https://unicode.scarfboy.com/得到的)
如果 SQL 是 运行 使用 dbaccess 更新有效。 如果字符被替换为不同的阿拉伯字符,则更新在 JDBC 和 dbaccess 中都有效。 DB_LOCALE 是 en_US.utf8 。提前谢谢你。
table
create table tbl_demo_1
(
id serial not null,
address varchar(100),
primary key(id)
);
insert into tbl_demo_1 values (1,'somevalue');
SQL
update tbl_demo_1
set address2 = 'BT. 8 ݠ MAIN ROAD'
where id = 1;
OS, IDS, JDK, JDBC
- OS : 分OS 8
- IDS:IBM Informix 动态服务器版本 14.10.FC4W1DE
- JDK : 1.8.0_172
- JDBC: 4.10.14, 4.50.7
- SQL 客户:SQuirrel SQL 客户,SQL Workbench/J
在使用 UTF-8 Informix 数据库时,建议使用 ICU 库而不是 Informix GLS 库,因为 ICU 支持的范围更广。 要启用 ICU,请确保在启动服务器和创建数据库之前将 GL_USEGLU 环境变量设置为 1 或 4。
更多信息在这里: https://informix.hcldoc.com/14.10/help/index.jsp?topic=%2Fcom.ibm.glsug.doc%2Fids_gug_063.htm
根据您的 API(如 JDBC 或 .NET),您可能还需要在连接字符串中包含 GL_USEGLU 才能正常工作。