Frage

Wir planen unsere DB zu Oracle.We Notwendigkeit zu migrieren, um manuell jede der eingebetteten SQL-Check ist in Oracle arbeiten, so wenig können verschiedene SQL folgen rules.Now mein Bedürfnis ist sehr einfach.

Ich muss über eine Datei suchen, die Abfragen wie folgt enthalten.

String sql = "select * from Test where name =" + Test + "und Alter =" + Alter;

Es gibt fast 1000 Dateien und jede Datei hat verschiedene Art von Fragen wie diese, wo ich die Abfrage zupfen allein die ich durch ein Unix script.But ich Notwendigkeit getan haben, diese Java-basierte Abfragen zu Oracle kompatible Abfragen zu konvertieren.

dh. select * from Test where name = "name" und Alter = "Alter"

Im Grunde muß ich die Syntax der Anfragen von this.I, zu überprüfen, so etwas wie dies in TOAD gesehen, aber ich habe mehr als 1000 Dateien und kann nicht manuell je one.Is es eine Möglichkeit, ändern?

Ich werde erklären, mehr ich die Frage ist nicht klar,

War es hilfreich?

Lösung

Für Leistung und Sicherheitsgründen sollten Sie PreparedStatement.bind verwenden (...) statt String-Verkettung Ihre SQL-Strings zu bauen.

Ich weiß nicht, einen Weg zur Bewältigung dieses Problems außer den Code Festsetzung, dass der Bedarf festgelegt werden. Wenn Sie gemeinsame Muster finden können, dann können Sie einige der Bearbeitung mit Suchen / Ersetzen oder sed oder ein anderes Werkzeug automatisieren, so lange wie Sie das Ergebnis diff, bevor sie bei der Prüfung.

Wenn es Tausende von Dateien Ich denke, dass es ein vernünftiges Größe Team ist, dass der Code auf diese Weise gebaut. Es scheint angemessen, die Arbeitsbelastung aus unter den Menschen zu teilen, die das System gebaut, anstatt Dump alles auf einer Person. Andernfalls werden Sie als „SQL Befestigungs guy“ am Ende und niemand sonst auf dem Team wird in einer tragbaren Weise einen Anreiz zu schreiben SQL-Code.

Andere Tipps

Ist Ihre aktuelle Anwendung SQL durch eine gemeinsame Klasse ausführen? Könnten Sie einige Protokollierung zu drucken, um die rohe SQL in dieser gemeinsamen Klasse hinzufügen? Von diesem Ausgang Sie ein kleines Skript schreiben könnten jede Aussage gegen Oracle ausgeführt werden.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top