Die in dieser Frage besprochene Funktionalität besteht darin, das angegebene SQL-Skript auszuführen. Der Inhalt des Skripts soll vom Benutzer während der Anwendungslaufzeit definiert werden. Das Skript kann sein, ob eine INSERT
-Anweisung oder eine Sequenz komplexer PL/SQL
-Anweisungen. Da die zur Laufzeit verfügbare Eingabe (eventuell als String-Instanz) über Java ausgeführt werden sollte.
Der aktuelle Ansatz umschließt die Benutzereingabe mit PreparedStatement
und führt sie aus. Diese Lösung funktioniert für die vorhandenen Testfälle. Das Hauptanliegen besteht darin, die volle Funktionalität der verwendeten Datenbank bereitzustellen, die möglicherweise nicht durch Tests abgedeckt ist, d. H. Eine Lösung, die der Übergabe des gleichen Benutzer-SQL-Skripts an die vom Datenbankanbieter bereitgestellte Konsole am nächsten kommt.
Ich frage mich, ob es irgendwelche Einschränkungen im derzeitigen Ansatz mit PreparedStatement
gibt? Gibt es einen besseren allgemeinen Ansatz für die Ausführung von SQL-Skripten über Java?
Nun, das ist eine breite Designfrage, aber ich denke, dass es mehrere Schritte gibt, die getan werden könnten:
Bitte beachten Sie:
Tags und Links sql java prepared-statement plsql oracle11g