Spring_Boot专栏 | ||
---|---|---|
上一篇 | 主目录 | 下一篇 |
目录
【前言】
创建数据库表 是在配置好阿里Druid连接池的前提下配置的,在配置Druid时已经配置过url、username、password等基本信息。配置Druid的方法
创建方法
前提:之前已经配置好阿里Druid的数据源了:配置方法
第一步:将.sql
文件放在resources/sql/文件夹下:
SET FOREIGN_KEY_CHECKS=0;
-- ----------------------------
-- Table structure for department
-- ----------------------------
DROP TABLE IF EXISTS `department`;
CREATE TABLE `department` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`departmentName` varchar(255) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;
SET FOREIGN_KEY_CHECKS=0;
-- ----------------------------
-- Table structure for employee
-- ----------------------------
DROP TABLE IF EXISTS `employee`;
CREATE TABLE `employee` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`lastName` varchar(255) DEFAULT NULL,
`email` varchar(255) DEFAULT NULL,
`gender` int(2) DEFAULT NULL,
`d_id` int(11) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;
第二步:在配置文件中添加schema
:
我这里用的是application.properties,添加的配置如下:
#数据库表schema.运行一次创建数据库之后需要注释掉,不然每次都会创建新的表
spring.datasource.schema= classpath:sql/department.sql,classpath:sql/employee.sql
spring.datasource.initialization-mode=always
- 【注】springboot2.x版本需加上
spring.datasource.initialization-mode=always
- application.properties中spring.datasource.schema值有两个用
,
分隔 - 如果是application.yml,则写法为:
注意:在运行一次之后需要把schema给注释掉,不然每次启动时都会在数据库中建立新的表,而原来数据库中的表会被删除。因此会出现每次启动得到的都是没有数据的空表!!!
第三步:启动运行主类,就可以将sql执行,写入mysql数据库
结果: