複数のユーザー入力に基づいて特定の値のセットをデータベースで検索するコードを記述する必要があります。最大でユーザーは5つの検索条件を入力することができ、1または2または3でもないことがあります。JDBCを使用した複数の検索条件
これについてはどのように進める必要がありますか?準備された声明は私を助けますか?
私はデータベースとしてMS Accessを使用しています。
複数のユーザー入力に基づいて特定の値のセットをデータベースで検索するコードを記述する必要があります。最大でユーザーは5つの検索条件を入力することができ、1または2または3でもないことがあります。JDBCを使用した複数の検索条件
これについてはどのように進める必要がありますか?準備された声明は私を助けますか?
私はデータベースとしてMS Accessを使用しています。
単純な解決策はwhere句を作成し、userinputによってparaListを維持することです。
a、b、c、d、eの5つの基準があります。
あなたのプログラムでは、Aに入力があるかどうかをチェックし、そうであればwhere(Likeまたは=)に追加し、入力値をList(paraList)に追加します。
最後に、作成したwhere節をpreparedStatementに連結し、パラメータをparaListで設定します。
あなたは私はあなたがスキャン(データ範囲のようなもの)を制限するために必要なフィールドを使用することをお勧めしますNamedParameterStatement
SELECT field1, field2
FROM MY_TABLE
WHERE (:P_FIELD1 IS NULL OR FIELD1 = :P_FIELD1)
AND (:P_FIELD2 IS NULL OR FIELD2 LIKE :P_FIELD2)
を使用して、このような何かを書くことができます
SELECT field1, field2
FROM MY_TABLE
WHERE DATE_FIELD BETWEEN :P_DATE1 AND :P_DATE2)
AND (:P_FIELD1 IS NULL OR FIELD1 = :P_FIELD1)
AND (:P_FIELD2 IS NULL OR FIELD2 LIKE :P_FIELD2)
は、それが
を役に立てば幸い