我尝试在我的项目中包含MySQL-DB。春季:在项目中设置MySQL数据库
我已经安装了MySQL程序,创建了一个DB(模式),并为访问认证设置了密码和用户名。
包含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客户端吗?
UPDATE改变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')
我该怎么做?
SOLUTION:
从上面和第一弹簧启动后持续DB注释掉ddl-auto=true
和initialize=true
将较大application.properties。
User
是MySQL中的一个保留关键字,所以不允许使用。
使用spring-app中的data.sql文件填充mySQL DB是不可能的,所以我通过MySQL-Workbench打开文件并执行语句。
什么错误?请添加堆栈跟踪 – akuma8
更新我的问题与错误消息 – SteveOhio
@ akuma8在我的问题上面添加了一些信息 – SteveOhio