Próbuję użyć HSQLDB jako wbudowanej bazy danych w aplikacji wiosną (do testowania). Ponieważ docelową produkcyjną bazą danych jest Oracle, chciałbym skorzystać z funkcji trybu składni Oracle HSQLDBs.Jak korzystać z HSQLDB w trybie składni zapytania Oracle?
Wiosną config używam
<jdbc:embedded-database type="HSQL" id="dataSource"> </jdbc:embedded-database> <jdbc:initialize-database data-source="dataSource" enabled="true"> <jdbc:script location="classpath:schema.sql"/> </jdbc:initialize-database>
aw schema.sql na górze pisałem:
SET DATABASE SQL SYNTAX ORA TRUE;
Jednak, gdy uruchomiony mój test, pojawia się następujący błąd:
java.sql.SQLException: Unexpected token: DATABASE in statement [SET DATABASE SQL SYNTAX ORA TRUE]
Czy jest to błąd składniowy, błąd uprawnień lub coś zupełnie innego?
Dzięki - również za wszelkie wskazówki, które mogą prowadzić do odpowiedzi.
Biorąc pod uwagę, że HSQL jest domyślną wiosną dla jdbc: wbudowana baza danych i biorąc pod uwagę cel Oracle, scenariusz ten powinien być bardzo powszechny. Jednak nie znalazłem niczego w sieci, nawet dotykając problemu.
Aktualizacja:
Problem został rozwiązany dzięki powyżej odpowiedzieć na # 1.
Jednak teraz dostać inny wyjątek:
org.springframework.dao.DataAccessResourceFailureException: Failed to populate database; nested exception is java.sql.SQLException: java.lang.RuntimeException: unsupported internal operation: StatementCommand unsupported internal operation: StatementCommand
Każdy pomysł co to jest spowodowane?
Czy kiedykolwiek znaleźć rozwiązanie błędu StatementCommand? Jestem teraz w tej samej łodzi. –
Dlaczego zamiast tego używać H2 db z trybem zgodności Oracle? – ebaxt