数据库应用与设计实验(2)

作者:吴创鹏
链接:http://www.lofter.com/lpost/30943900_1c5dfea70
来源:LOFTER
实验2:建立表和定义完整性约束

CREATE DATABASE 实验
CREATE SCHEMA wcp

CREATE TABLE wcp.仓库
(仓库号CHAR(6) PRIMARY KEY CHECK(仓库号like’[A-Z][A-Z][0-9][0-9][0-9][0-9]’),
城市CHAR(10) UNIQUE NOT NULL,
面积INT CHECK(面积>=50))

CREATE TABLE wcp.职工
(职工号char(8) PRIMARY KEY CHECK(职工号like’[A-Z][A-Z][0-9][0-9][0-9][0-9][0-9][0-9]’),
仓库号CHAR(6) FOREIGN KEY REFERENCES wcp.仓库(仓库号) ,
工资money CHECK(工资>=1000 and 工资<=10000))

CREATE TABLE wcp.供应商
(供应商号char(4) PRIMARY KEY CHECK(供应商号like ‘S[0-9][0-9][0-9]’),
供应商名char(16),
地址char(30))

CREATE TABLE wcp.订购单
(职工号char(8) NOT NULL FOREIGN KEY REFERENCES wcp.职工(职工号),
供应商号char(4) NULL FOREIGN KEY REFERENCES wcp.供应商(供应商号),
订购单号char(6) PRIMARY KEY CHECK(订购单号like ‘OR[0-9][0-9][0-9][0-9]’),
订购日期datetime default getdate(),
金额money default null)

CREATE TABLE wcp.订单明细
(订购单号char(6) NOT NULL FOREIGN KEY REFERENCES wcp.订购单(订购单号),
序号char(2) ,
产品名称char(20),
单价money default null check(单价>0) ,
数量int NOT NULL CHECK(数量>0),
PRIMARY KEY(订购单号,序号))

(1)
ALTER TABLE wcp.订购单
ADD 完成日期datetime default null

(2)
ALTER TABLE wcp.订单明细
add CHECK (数量between0 and 1000)

(3)
ALTER TABLE wcp.供应商
ALTER column 供应商名varchar(30)

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值