Olá Mark, agora está funcionando corretamente agora que estou usando o dialeto correto.
Obrigado!
Avalados por :
Estou tentando configurar um banco de dados h2 em memória em vez de usar o sqlite padrão em um projeto java sap cap.
Para fazer isso, comentei a dependência padrão sqlite-jdbc no arquivo srv/pom.xml e adicionei com.h2database.
Também configurei o application.yaml da seguinte forma:
datasource: url: jdbc:h2:mem:testdb driver-class-name: org.h2.Driver username: sa password:jpa: database-platform: org.hibernate.dialect.H2Dialect hibernate: ddl-auto: create-drop
Estou recebendo uma série de exceções ao executar mvn spring-boot:run relacionadas a
org.h2.jdbc.JdbcSQLSyntaxErrorException : Table "LOCALIZED_SAP_CAPIRE_BOOKSHOP_BOOKS" not found
O projeto funciona perfeitamente bem com o sqlite padrão.
Como configuro para H2?
Obrigado,
Sumeet
Olá Mark, agora está funcionando corretamente agora que estou usando o dialeto correto.
Obrigado!
richard.pellerin : Qual versão do @sap/cds-dk você está usando? O SQL compatível com H2 só é suportado a partir do @sap/cds-dk ^4. Certifique-se também de configurar o dialeto SQL como "plain", conforme descrito aqui: https://cap.cloud.sap/docs/java/development/#h2 . Com a próxima versão @sap/cds-dk 4.2.x (ainda não lançada), isso será configurado automaticamente ao usar a opção "to --sql" com o comando "cds deploy", mas por enquanto ainda é necessário.
Olá Marc, notei que o aplicativo de exemplo está agora utilizando H2.
No meu projeto, não estou recebendo as instruções de criação/exclusão de tabelas, apenas as visualizações no schema.sql quando uso "deploy --to sql --dry". Existe algo especial que eu deva fazer?
Obrigado
Este é um problema conhecido com H2 (e atualmente a principal razão pela qual promovemos o sqlite sobre o h2).
As visualizações no schema.sql gerado pelo compilador CDS durante a construção não estão ordenadas de forma que o schema.sql possa ser usado com H2. Algumas visualizações são definidas antes de suas visualizações/tabelas dependentes, o que cria problemas no H2.
Este problema já está sendo abordado internamente e será resolvido em futuras versões. Até lá, basicamente você precisa ordenar as definições de visualização em seu schema.sql de alguma forma (automatizada) por si mesmo, se deseja usar o H2.
Fique atento às notas de lançamento e ao nosso aplicativo de amostra . Uma vez que este problema seja resolvido, planejamos mudar nossa amostra Java de sqlite para H2 também.
contacto@primeinstitute.com
(+51) 1641 9379
(+57) 1489 6964
© 2024 Copyright. Todos los derechos reservados.
Desarrollado por Prime Institute