0
MySQLワークベンチで、私が要求しているID(実際にはデータはありません)のテーブルにデータがないことを確認します。ただし、条件は真と評価されています。空の結果、JDBC
は、最初に、「InvalidRowReasonは、」インデックスが最初の前に実際にあるので、それが真と評価されたことを信じるように私を導いたが、ドキュメントのために: はここでResultSetのデバッグ出力ですisBeforeFirst()状態:
カーソルが最初の行の前にある場合はtrueです。偽結果セットが行
が含まれていないカーソルが他の位置にあるか、場合、私はその後、rowDataを拡大し、サイズが1に等しいことがわかった:
どのような行やデータもテーブルに存在しないことを確認できるので、これがどのようになるか分かりません。私は何が欠けていますか?
としてクエリを記述します。私のデータベースにはたくさんのデータが含まれており、COUNT(*)は*よりスマートな選択肢でした。しかし、私は今、COUNTのドキュメントを読んで、それがヌルを数えないことを発見しました。これがInvalidRowReasonが「結果セットの開始前」であった理由です。合法的に真実に戻っていた。もう一度デバッグして、InvalidRowReasonが "空の結果セットで不正な操作"になりました。必要に応じてfalseを返します。ヌルズ! –