Java学习【阶段三[01】MySQL(05 约束)

CREATE TABLE emp ( -- 创建emp表
			id INT PRIMARY KEY AUTO_INCREMENT, 
			NAME VARCHAR(30), age INT, 
			dep_name VARCHAR(30), -- 部门名称
			dep_location VARCHAR(30) -- 部门地址
		);
		 -- 添加数据 
		 INSERT INTO emp (NAME, age, dep_name, dep_location) VALUES ('张三', 20, '研发部', '广州'); 
		 INSERT INTO emp (NAME, age, dep_name, dep_location) VALUES ('李四', 21, '研发部', '广州'); 
		 INSERT INTO emp (NAME, age, dep_name, dep_location) VALUES ('王五', 20, '研发部', '广州'); 
		 INSERT INTO emp (NAME, age, dep_name, dep_location) VALUES ('老王', 20, '销售部', '深圳'); 
		 INSERT INTO emp (NAME, age, dep_name, dep_location) VALUES ('大王', 22, '销售部', '深圳'); 
		 INSERT INTO emp (NAME, age, dep_name, dep_location) VALUES ('小王', 18, '销售部', '深圳');
		 
		 SELECT * FROM emp;   -- 此表数据较为冗余
		 
		 
		 -- 1.创建主表
		 CREATE TABLE department(
			id INT PRIMARY KEY AUTO_INCREMENT,
			dep_name VARCHAR(20),
			dep_location VARCHAR(20)
		 );

		 -- 添加2个部门
		INSERT INTO department VALUES(NULL, '研发部','广州'),(NULL, '销售部', '深圳');
		SELECT * FROM department;
		
		-- 2. 创建员工表
		 CREATE TABLE employee(
			id INT PRIMARY KEY AUTO_INCREMENT,
			NAME VARCHAR(20),
			age INT,
			dep_id INT ,         -- 外键对应主表的主键
			-- 创建外键约束
			CONSTRAINT emp_depid_fk FOREIGN KEY (dep_id) REFERENCES department(id)    -- 外键约束:只能出现与主表中一致的主键id
			ON UPDATE CASCADE ON DELETE CASCADE                         -- 级联操作,在修改和更新主表的主键时,同时更新或删除附表的外键值
		)
		-- 添加员工,dep_id表示员工所在的部门
			INSERT INTO employee (NAME, age, dep_id) VALUES ('张三', 20, 1);
			INSERT INTO employee (NAME, age, dep_id) VALUES ('李四', 21, 1);
			INSERT INTO employee (NAME, age, dep_id) VALUES ('王五', 20, 1);
			INSERT INTO employee (NAME, age, dep_id) VALUES ('老王', 20, 2);
			INSERT INTO employee (NAME, age, dep_id) VALUES ('大王', 22, 2);
			INSERT INTO employee (NAME, age, dep_id) VALUES ('小王', 18, 2);
			

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值