テーブル名の取得にプリペアド ステートメントを効果的に使用する
プリペアド ステートメントを使用してクエリを実行しようとすると、パラメータとしてテーブル名を指定します。このエラーは通常、パラメーターではなくテーブル名が必要であることを示します。
この問題を解決するには、プリペアド ステートメントではテーブル名をパラメーターとして指定できないことを理解することが重要です。これらはクエリにハードコーディングする必要があります。
改訂されたクエリ
したがって、日付パラメータに基づいてテーブルからデータを正しく選択するには、クエリを変更する必要があります。次のように:
private String query1 = "SELECT plantID, edrman, plant, vaxnode FROM [" + reportDate + "?]";
この改訂されたクエリでは、reportDate がハードコードされたテーブル名に追加され、次のことが保証されます。テーブル名は目的の日付範囲と一致します。
この規則に従うことで、選択基準の一部としてテーブル名を含むプリペアド ステートメント クエリを正常に実行できます。
以上がテーブル名が動的である場合、準備されたステートメントを正しく使用するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。