【发布时间】:2017-09-15 19:44:01
【问题描述】:
我尝试在我的项目中包含一个 MySQL-DB。
我已经安装了 MySQL 程序,创建了一个数据库(模式)并为访问验证设置了密码和用户名。
包含 pom 文件依赖等。
现在我被我的 application.properties 卡住了:
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
spring.datasource.url=jdbc:mysql://localhost:3306/asndb
spring.datasource.username=root
spring.datasource.password=asnTeam1
spring.jpa.hibernate.ddl-auto=create
在 MySQL 管理器中,我可以看到模型的所有属性,所以连接应该可以正常工作,对吧?
我做错了什么?我需要 MySQL 客户端吗?
更新更改了 application.properties
spring.datasource.url=jdbc:mysql://localhost:3306/asndb?useUnicode=true&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=UTC
spring.datasource.username=root
spring.datasource.password=asnTeam1
spring.jpa.hibernate.ddl-auto=create
spring.datasource.testWhileIdle = true
spring.datasource.validationQuery = SELECT 1
spring.datasource.driverClassName = com.mysql.jdbc.Driver
spring.jpa.show-sql = true
spring.jpa.properties.hibernate.dialect = org.hibernate.dialect.MySQL5Dialect
spring.datasource.platform=mysql
spring.datasource.schema=schema-mysql.sql
spring.datasource.data=data-mysql.sql
spring.datasource.initialize=true
spring.datasource.continue-on-error=true
现在我想用 MySQL 客户端打开我的 data.sql 文件。但是我的 sql 语法中有错误。在插入语句之后:
INSERT INTO USER (FIRST_NAME, LAST_NAME, USERNAME, PASSWORD, USER_ROLE) VALUES('Admin', 'Istrator', 'admin', '$2a$10$W9xQIwa/FstPUvcbzJXnQ.XjVdTyIcCEp.g6VCq1gYuSsQNjJjbJG', 'ADMIN')
INSERT INTO USER (FIRST_NAME, LAST_NAME, USERNAME, PASSWORD, USER_ROLE) VALUES('Bernd', 'Menia', 'bernd', '$2a$10$6dQcayeT/JAFvgFvzIjlcew5z9cmdCrGlv57.BGnIKvPXTDsQm7hG', 'PARENT')
INSERT INTO PARENT (FAMILY_STATUS, LOCATION, POSTCODE, STREET_NAME, IMG_NAME, STATUS, ID) VALUES ('MARRIED', 'Innsbruck', '6020', 'Bahnhofstraße', 'john.jpg',TRUE, SELECT ID FROM USER WHERE USERNAME = 'bernd')
我做错了什么?
解决方案:
从上方插入较大的 application.properties,对于持久数据库,在第一次 spring-boot 后注释掉 ddl-auto=true 和 initialize=true。
User是MySQL中的保留关键字,不允许使用。
用 spring-app 中的 data.sql 文件填充 mySQL DB 是不可能的,所以我通过 MySQL-Workbench 打开文件并执行语句。
【问题讨论】:
-
错误是什么?请添加堆栈跟踪
-
用错误信息更新了我的问题
-
@akuma8 在我上面的问题中添加了一些信息
-
问题似乎来自时区配置。这可以帮助你:stackoverflow.com/questions/7605953/… 或这个:stackoverflow.com/questions/7605953/…
-
thx.. 更新了我的问题..
标签: mysql spring spring-data-jpa