Der H2-Postgresql-Modus scheint bei mir nicht zu funktionieren

Hallo, meine Anwendung greift auf die Postgres-Datenbank zu und ich habe viele vordefinierte Abfragen (Rang, Parition, komplexe Verknüpfung usw.), die ich gegen Postgres abfeuere. Jetzt möchte ich diese Abfragen mit kleinen Testdaten auf Unit-Tests testen. Also habe ich mit H2 / Junit angefangen. Ich habe herausgefunden, dass die meisten Postgres-Abfragen wie Rank, Partition, Complex case, wenn sie aktualisiert werden usw. Also habe ich darüber nachgedacht, den H2-PosgreSQL-Kompatibilitätsmodus zu verwenden, indem ich dachte, dass alle Postgres-Abfragen auf H2 funktionieren. Bitte korrigieren Sie mich, wenn ich falsch liege.

Ich folgte der H2-Dokumentation mit den Worten: Um den PostgreSQL-Modus zu verwenden, verwenden Sie die Datenbank-URL jdbc: h2: ~ / test; MODE = PostgreSQL oder die SQL-Anweisung SET MODE PostgreSQL.

Ich habe den Modus mit aktiviertSET MODE PostgreSQL und ich habe versucht, eine der Abfragen auszulösen, die rank () beinhaltet und in postgres funktioniert, aber es hat nicht funktioniert H2. Es gibt mir die folgende Ausnahme

Function "RANK' not found; in SQL statement

Bitte führen Sie mich neu in H2 und Datenbank-Tests. Danke im Voraus. Ich verwende den H2-JDBC-Treiber, um Postgres-Abfragen auszulösen, indem ich denke, dass der H2-Posgress-Kompatibilitätsmodus es mir ermöglicht, Postgres-Abfragen auszulösen.

Antworten auf die Frage(1)

Ihre Antwort auf die Frage