我想在springboot中通过H2创建表,但运行时出现以下错误:;
组织。冬眠地方话方言:hh000400:使用方言:org。冬眠地方话H2方言组织。冬眠工具模式。spi。CommandAcceptanceException:通过JDBC语句执行DDL“创建表bank_account(id bigint not null,balance double not null,full name varchar(128)not null,primary key(id))”时出错
...
data.sql:
Insert into Bank_Account(ID, Full_Name, Balance) values (1, 'Ibrahim', 2500);
Insert into Bank_Account(ID, Full_Name, Balance) values (2, 'Ates', 4210);
pom.xml;
<dependency>
<groupId>com.h2database</groupId>
<artifactId>h2</artifactId>
<scope>runtime</scope>
</dependency>
应用财产;
# H2
spring.h2.console.enabled=true
spring.h2.console.path=/h2
# Datasource
spring.datasource.url=jdbc:h2:mem:testdb
spring.datasource.driverClassName=org.h2.Driver
spring.datasource.username=sa
spring.datasource.password=
spring.jpa.database-platform=org.hibernate.dialect.H2Dialect
spring.datasource.continue-on-error=true
spring.jpa.hibernate.ddl-auto=create
我错过了什么?
解决方案
问题是由实体的列名引起的。我已经将名为“全名”的实体更改为“Full_Name”,然后问题就解决了。
问题似乎是因为您试图使用hibernate auto ddl工具以及Spring Boots模式初始化数据库。sql文件。
根据文件:
在基于JPA的应用程序中,您可以选择让Hibernate创建模式或使用schema。sql
,但不能同时执行这两项操作。确保禁用Spring。jpa。冬眠如果使用模式,ddl自动。sql
。
因此,要么拆下Spring。jpa。冬眠ddl auto=create
proprerty或schema。sql
文件,这样Spring Boot就不会试图获取它。
所以我正在尝试将spring boot连接到MySql,所以我已经安装了sql并开始运行,我可以将我的IDE和工作台连接到它MySql Local insrance 3306 然后我用这个pom将spring boot应用程序装入箱中
我真的需要帮助,我在stackoverflow上找到的所有问题中都搜索到了,但没有任何效果。我以前从未使用过hibernate,我不知道自己做错了什么 这是我的存储库:https://github.com/ionutincau/test_db 我收到了这个错误:
我在使用以下方言创建表时遇到以下错误 “org.hibernate.dialoget.mysqlinoddDialogic”
我是android studio的新手,我不明白为什么我的应用程序在开始使用seekbar时会崩溃。谁能帮帮我吗? 公共类MainActivity扩展了AppCompatActivity{SeekBar SeekBar;//声明SeekBar对象TextView TextView,textView2;ListView simpleListview;//声明SeekBar int离散的成员变量;in
我在获取H2 In Memory数据库以填充时遇到麻烦。这里的想法是拥有唯一的BuildingCode作为主键和id。 我发现了以下类级错误: org.hibernate.tool.schema.spi.命令验收异常:通过JDBC语句执行DDL“更改表属性添加列building_codevarchar(255)not null”时出错 原因:org。h2。jdbc。JdbcSQLIntegrity