多表的创建及关系-一对多
一对多:
用户和订单
--创建用户表
create table user(
id int primary key auto_increment,
username varchar(20)
);
--创建订单表
create table orders(
id int primary key auto_increment,
price double,
user_id int
);
为了保证数据的有效性和完整性(不能随意删除增加),增加约束(外键约束),
在多表的一方增加外键约束
格式:
alter table 多表名称 add foreign key(外键名称) references 一表名称(主键);
例如:
alter table orders add foreign key(user_id) reference user(id);
增加外键约束后,在执行删除用户数据时,如果该用户数据在订单表中有引用数据,则会发生失败
增加了外键约束之后的特点:
1、主表中不能删除从表中已经引用的数据
2、从表中不能增加主表中不存在的数据