交互式SQL(MySQL)(1)

交互式SQL(MySQL)(1)

数据库系统:MySQL 8.0.19
操作:mysql控制台

首先,要从cmd进入mysql控制台。我们进入mysql的bin文件夹,接下来就是刻在DNA里的操作。

mysql -h localhost -u root -p

然后创建数据库db_SPJ
在这里插入图片描述
在db_SPJ中创建以下四个关系(表)
供应商表S(SNO,SNAME,STATUS,CITY)
零件表P(PNO,PNAME,COLOR,WEIGHT)
工程项目表J(JNO,JNAME,CITY)
供应情况表SPJ(S NO,PNO,JNO,QTY)

1)每一张表都必须有主键。
2)需要使用外键的表必须使用外键。
3)采用唯一值、检查、非空和默认值约束。这四种约束在S、P和J表这三张表中至少使用一次。
4)根据主键、外键、唯一值、检查、非空和默认值六种约束的特性,设计适当的方案对S、P和J表中的这六种约束进行检验。

S
在这里插入图片描述

P
在这里插入图片描述
J
在这里插入图片描述

对于P表,MySQL忽略check,故用触发器实现check
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
delimiter的作用就是将默认的终结符 ’ ; ’ 转换为你想要的符号。
写触发器时要用到 ’ ;’ ,然而MySQL检索到 ’ ; ’ 就会直接终结执行,用多个终结符则报错。我写trigger的时候就因为不会delimiter一直报错。

SPJ
在这里插入图片描述
show create table SPJ能看到外键,show keys from SPJ也可以

在这里插入图片描述
第一次写博客,先写这么多,未完待续。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值