ホームページ >Java >&#&チュートリアル >テーブル名が動的である場合、準備されたステートメントを正しく使用するにはどうすればよいですか?

テーブル名が動的である場合、準備されたステートメントを正しく使用するにはどうすればよいですか?

Susan Sarandon
Susan Sarandonオリジナル
2024-12-26 04:08:12202ブラウズ

How Can I Correctly Use Prepared Statements When the Table Name Is Dynamic?

テーブル名の取得にプリペアド ステートメントを効果的に使用する

プリペアド ステートメントを使用してクエリを実行しようとすると、パラメータとしてテーブル名を指定します。このエラーは通常、パラメーターではなくテーブル名が必要であることを示します。

この問題を解決するには、プリペアド ステートメントではテーブル名をパラメーターとして指定できないことを理解することが重要です。これらはクエリにハードコーディングする必要があります。

改訂されたクエリ

したがって、日付パラメータに基づいてテーブルからデータを正しく選択するには、クエリを変更する必要があります。次のように:

private String query1 = "SELECT plantID, edrman, plant, vaxnode FROM [" + reportDate + "?]";

この改訂されたクエリでは、reportDate がハードコードされたテーブル名に追加され、次のことが保証されます。テーブル名は目的の日付範囲と一致します。

この規則に従うことで、選択基準の一部としてテーブル名を含むプリペアド ステートメント クエリを正常に実行できます。

以上がテーブル名が動的である場合、準備されたステートメントを正しく使用するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。