简体   繁体   English

将 h2 更改为 mysql db on spring boot get error

[英]changing h2 to mysql db on spring boot get error

I'm working on spring boot v2.3.5.我正在研究 spring 启动 v2.3.5。

My problem is I set my variable “hibernate.dialect” to MySQL5InnoDBDialect.我的问题是我将变量“hibernate.dialect”设置为 MySQL5InnoDBDialect。

Then error is returned that MySQL syntax error when creating table.然后返回错误 MySQL 创建表时出现语法错误。

Syntax error in SQL statement "CREATE TABLE A (ID BIGINT NOT NULL AUTO_INCREMENT, ACCESS_TOKEN VARCHAR(2000) NOT NULL, CREATE_DATE DATETIME NOT NULL, REFRESH_TOKEN VARCHAR(2000) NOT NULL, USER_NO VARCHAR(100) NOT NULL, PRIMARY KEY (ID)) ENGINE=[*]INNODB"; expected "identifier"; SQL statement

But actually when i copied that command, it works.但实际上,当我复制该命令时,它起作用了。 Plus, when I change the option from Innodb to H2 db, it works.另外,当我将选项从 Innodb 更改为 H2 db 时,它起作用了。

Any ideas with my problems?对我的问题有什么想法吗?

If you are switching your datasource between different dababases you have to update configuration properly.如果您在不同数据库之间切换数据源,则必须正确更新配置。 From available information you have provided I assume you need to updated it as follows:根据您提供的可用信息,我假设您需要按如下方式更新它:

spring.jpa.properties.hibernate.dialect = MySQL5InnoDBDialect
spring.datasource.driver-class-name = com.mysql.jdbc.Driver
spring.datasource.url = jdbc:mysql://localhost/yourDbName
spring.datasource.username = dbUsername
spring.datasource.password = dbPassword

please update url, username and password according to your environment请根据您的环境更新url,用户名和密码

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM