2017-07-14 7 views
-2

Java 1.6およびOracle 9iを使用してデータをフェッチする簡単なクエリを実行しようとしています。 私は文で結果を取得していますが、preaparedstatementの結果セットを使用している間に空の行が返されます。どんな身体も同じ問題に直面していますか?StatementがJavaおよびOracleと連携している間にPrepared Statementが機能しない

私のJDBCドライバのバージョンは10.1.0.5.0 で、DBは、Oracle9i Enterprise Editionのリリース9.2.0.8.0である - 64ビットの生産

、以下のようなプログラムです。

String query = "SELECT count(SEVERITY) as CNT FROM TICKET_TABLE where upper(customerid)=?" ; 
PreparedStatement pst =null; 
ResultSet lResultSet = null; 
pst = con.prepareStatement(query);  
pst.setString(1, "CUST_A"); 
lResultSet = pst.executeQuery();     
while(lResultSet.next()) {      
    i = lResultSet.getInt("CNT"); 
} 
lResultSet.close(); 
pst.close(); 
con.close(); 
+0

ただ1つの行が必要な場合は、 'while'を' if'に置き換えてください... –

+1

間違っている間は問題ありません。 PreparedStatementの結果がない理由を説明しません。 – duffymo

+0

答えではなく、ただのコメントでした... –

答えて

0

使用しているOracleドライバの互換性は、Javaバージョンとデータベースのバージョンで確認できます。

第2に、問合せ基準は、最初にOracleクライアント・ツールを使用してレコードを実行してレコードを戻すと想定されていることを確認します。

+0

sqldeveloper 4.2と同じクエリが返されました – Jigs

+0

使用しているjdbcドライバの互換性を確認してください。およびOS。 Oracleドライバは時々面白いことがあります。 – Kinglee

+0

APP-1 [Not Working] Java 1.5、JDBCドライバのバージョンは9.2.0.1.0です。 DBはOracle です.DB VerはOracle9i Enterprise Editionリリース9.2.0.8.0 - 64bit Productionです。 OracleはSolaris 5にインストールされています。10 APP-2 ======== のJava 1.5、JDBCドライバのバージョンは9.2.0.1.0である[働いた]、 DBは、Oracle DB 版は、Oracle9i Enterprise Editionのリリース9.2.0.8.0です - OracleはApp3起動 のSolaris 5.10にインストールされている64ビットの生産 は ==== のJava 1.5、JDBCドライバのバージョンは9.2.0.1.0 DBである[勤務]オラクル DB版は、Oracle Database 10gのEnterprise Editionのリリース10.2.0.4です。 0 - 製品 Windowsエンタープライズ2003にOracleがインストールされている – Jigs

関連する問題