で実行した場合、同じクエリが行を返すにもかかわらず、私は多少このようなコードを使用してPreparedStatementを使用してDBから行を取得しようとしています動作しませんTOADを実行すると、次の行が返されます。準備書は、ヒキガエル
select * from abc where a='x' and b='y' and c='z';
私はここで間違っていますか? (where句の3番目の条件はcharです)。
で実行した場合、同じクエリが行を返すにもかかわらず、私は多少このようなコードを使用してPreparedStatementを使用してDBから行を取得しようとしています動作しませんTOADを実行すると、次の行が返されます。準備書は、ヒキガエル
select * from abc where a='x' and b='y' and c='z';
私はここで間違っていますか? (where句の3番目の条件はcharです)。
あなたのプリペアドステートメントからあなたは相当やっているのに対し、2つのクエリは、異なるヒキガエルにあなたが
select * from abc where a='x' and b='y' and c='z'
を発行している:
select * from abc where a='x' and b='y' and c='Z'
z
をZ
と同じではありません
setParaでJava char
としてOracle CHAR
パラメータを指定する必要はありません。メーターは、そう
preparedStatement.setString(3,"z");
または
preparedStatement.setString(3,String.valueOf('z'));
のいずれかに
preparedStatement.setString(3,String.valueOf('Z'));
を変更することはおそらく動作します。
preparedStatement.setString(3、 "z");どちらかといえば動作しません。 – suhaskaranth
次に接続設定を確認し、TOADとコードの接続で同じユーザー/スキーマを使用していることを確認してください。 – beny23
zまたはZ?なぜ 'preparedStatement.setString(3、" z ");'を使わないのですか? –
クラス –
にインポートされた接続関連のコードとライブラリを書いてください。「prepared statement not working」と言ったら、エラーが出るのですか、結果が得られないということですか? – codeulike