Wir begannen, die H2 in der Speicherdatenbank für automatisierte Tests zu verwenden. Wir verwenden Oracle für unsere Produktion & Entwicklungsumgebungen. Die Idee besteht also darin, die Tabellenstruktur in der H2-Testdatenbank zu duplizieren, so wie es in unserer Oracle-Entwicklerdatenbank der Fall ist.Oracle MERGE-Anweisung in H2-Datenbank
Die Oracle SQL-Anweisungen enthalten MERGE-Anweisungen und verwenden Aliasnamen für Tabellennamen und USING in der Abfrage.
Wie kann ich diese Abfrage dynamisch so ändern, dass sie mit H2 so kompatibel ist, dass die vorhandene Abfrage in der Entwicklungsumgebung nicht geändert wird?
Beispiel der Oracle SQL, um mit H2 kompatibel gemacht werden,
MERGE INTO TABLE T1
USING (SELECT ....
...........
FROM DUAL) T2
(T1 & T2 sind die Alias für die Tabelle)
Ihr Projekt hat eine andere Art von Datenbank gewählt, eine mit einem anderen SQL-Drammar, für automatisiertes Testen? Fnord. Wenn Sie Ihre Anwendung neu schreiben müssen, damit Ihre automatisierten Tests laufen, was haben Ihre Tests bewiesen? – APC
wir wählen H2, weil es eine In-Memory-Datenbank ausführen kann, die sehr schnell ist. – user1877775
Ja, aber wenn es nicht die SQL-Grammatik ausführen kann, die Sie in Dev und Production verwenden, spielt es keine Rolle, wie schnell die Tests laufen, sie sind irrelevant. – APC