给定供应商供应零件的数据库db_sp,其中包含了供应商表S /零件P和供应情况表SP,表结构如下:
- 供应商S(sNO,sName,状态,城市),各部分的含义为供应商号供应商名称,状态和所在城市,状态为整型,其他为字符型
- 零件P(pNo,pName,颜色,重量),表示:零件编号,零件名称,颜色和重量,重量为浮点型,其他为字符型供应
- SP(sNo,pNo,qty)供应商编号,零件编号,供应量,qty为整型其他为字符型
使用Mysql控制台客户端创建一个名称为db_sp的数据库
create database db_sp charset = utf8;
请使用MYSQL控制台客户端在数据库db_sp中创建表,要求如下
- 定义表S,表P,表SP的主键和外键,以保证参照并和实体合并
- S表中的S名称属性取值不为空且不唯一
- 定义产品颜色只能在"Red",“Yellow”,“Green”,“Blue”
- 定义供应商所在城市为伦敦时其状态为20
添加表内容
数据表S:
create table S(
sNo varchar(10),
sName varchar(20) not null unique,
status int,
city varchar(20),
constraint pk_sNo primary key(sNo),
constraint ch_status check(city!="London" or status=20)
)engine=innodb;
数据表P:
create table P(
pNo varchar(10),
pName varchar(20) not null,
color varchar(10) check(color in("Red","Yellow","Green","Blue")),
weight float,
constraint pk_pNo primary key(pNo)
)engine=innodb;
数据表SP:
create table SP(
sNo varchar(10),
pNo varchar(10),
qty int,
constraint fk_sNo foreign key(sNo) references S(sNo),
constraint fk_pNo foreign key(pNo) references P(pNo)