Wie verwende ich eine Tabellennamenvariable für eine von Java vorbereitete Anweisung? Insert [duplicate]

Diese Frage hat hier bereits eine Antwort:

Verwenden von Prepared Statements zum Festlegen des Tabellennamens 6 answers

Ich verwende ein Java PreparedStatment-Objekt, um eine Reihe von gestapelten INSERT-Abfragen zu erstellen. Die Abfrageanweisung hat das Format ...

String strQuery = "INSERT INTO ? (col1, col2, col3, col4, col5) VALUES (?,?,?,?,?,?);";

... also sind beide Feldwerte und der Tabellenname Variablen (dh ich habe mehrere Tabellen mit demselben Spaltenformat, von denen jede Einfügung zu einer anderen geleitet wird). Ich kann die Executes zum Laufen bringen, wenn ich das "?" tablename variable und hard code, aber jede vorbereitete Anweisung wird in eine andere Tabelle eingefügt, sodass eine Variable erhalten bleiben muss, die ich unmittelbar vor der Ausführung der Batch-Abfrage mit ...

stmt.setString(1, "tableName1");

Wie kann ich das bitte als dynamische Variable zulassen?

Antworten auf die Frage(5)

Ihre Antwort auf die Frage