应
- 应用程序中的命令句柄数量超过限制怎么办?
用户应该修改应用程序, prepare1次,然后EXECUTE n 次。
例如:
ps2 = this.conn.prepareStatement("insert into TESTDB values(?, ?, ?);");
for(int i=0; i<list.size();i++)
{
tData = (TestData)list.get(i);
ps2.setString(1,tData.shp_cd);
ps2.setString(2,tData.shp_nm);
ps2.setString(3,tData.tel_no);
ps2.executeUpdate();
this.conn.commit();
}
为提高性能,我们建议如上例一样编写程序。也就是,PREPARES SQL 语句仅一次,然后在程序运行当中根据需要可EXECUTE多次。 ...
- 应用程序连接DBMaster时需要进行哪些参数设置,有什么参考顺序?
连接字符串不仅包括数据库连接的必要信息,而且包括一些数据库设置的相关连接选项,例如:LCODE数据库字符编码设置、事务隔离等级(SQL_TXN_ISOLATION)设置、自动提交模式开启或关闭状态设置等。
使用SQLSetConnectOption函数设置连接选项,例如:
你可以在dmconfig.ini中设置使用关键词字设置CLICODE,或者在AP中使用CLIENT_CHAR_SET设置字符编码。
例如:
In dmconfig.ini:
DB_CLILCODE=GBK;
In PHP program:
SET CLIENT_CHAR_SET GBK;
用户可以选择下面的方法,即使用配置关键词DB_IsoLv,或者在AP中使用“SQLSetConnectOption SQL_TXN_ISOLATION”进行设置。
例如:
In dmconfig.ini
DB_ISOLV = 1 ;( 1,2,3,4 four options)
In ODBC program:
SQLSetConnectOption (hdbc, SQL_TXN_ISOLATION, SQL_TXN_ READ_UNCOMMITTED)
SQLSetConnectOption (hdbc, SQL_TXN_ISOLATION, SQL_TXN_READ_COMMITTED)
SQLSetConnectOption (hdbc, SQL_TXN_ISOLATION, ...