1

SQL 'select' を使用して、次のように schemaname.tablename で db2 テーブルにアクセスしています。

select 'colname' from schemaname.tablename 

テーブル名には確かに 'colname' = SERVER_POOL_NAME があります。それでも、次のエラーが表示されます:「無効なパラメーター:不明な列名 SERVER_POOL_NAME 。ERRORCODE=-4460、SQLSTATE=null」

db2 v10.1 FP0 jdbc ドライバー バージョン 3.63.123 を使用しています。JDBC 3.0 仕様 アプリケーションは db2 管理者および Windows 2008 管理者として実行されます

db2jcc4.jar Invalid parameter: Unknown column nameでこの問題に関するディスカッションを見ました。

しかし、接続パラメーター 'useJDBC4ColumnNameAndLabelSemantics をどこに設定する必要があるかわかりません (値 =2 に)

パラメーターが com.ibm.db2.jcc.DB2BaseDataSource に表示されることを確認しました (参照: http://publib.boulder.ibm.com/infocenter/db2luw/v9r5/index.jsp?topic=%2Fcom.ibm.db2. luw.apdv.java.doc%2Fsrc%2Ftpc%2Fimjcc_r0052607.html )

しかし、DB2 インストールでこのファイルが見つかりません。多分それは.jarファイルにパックされています

何かアドバイス ?

4

1 に答える 1

1

参照しているページにリンクがあり、プロパティを設定する方法が示されています。具体的には、Propertiesオブジェクトに目的の値を入力して、getConnection()呼び出しに提供できます。

String url = "jdbc:db2://host:50000/yourdb";
Properties props = new Properties();
props.setProperty("useJDBC4ColumnNameAndLabelSemantics", "2");
// set other required properties
Connection c = DriverManager.getConnection(url, props);

または、プロパティの名前と値のペアを JDBC URL 自体に埋め込むこともできます。

String url = "jdbc:db2://host:50000/yourdb:useJDBC4ColumnNameAndLabelSemantics=2;";
// set other required properties
Connection c = DriverManager.getConnection(url);

名前と値の各ペアは、最後のものであってもセミコロンで終了する必要があることに注意してください。

于 2013-08-30T15:58:22.990 に答える