王珊 数据库 第五章笔记

将Student表中的Sno属性定义为码
(1)在列级定义主码
CREAT TABLE Student
(
    (Sno  CHAR(9) PRIMARY KEY,
     Sname  CHAR(20) NOT NULL,         //char
     Ssex  CHAR(2) ,
     Sage SMALLINT    空格   CHECK(  Sage IN ('18','19','20') ),   
	 Sdept CHAR(20)
);


(2)在表级定义主码

    Sno CHAR(9),               //9位学号
	Sname CHAR(20) NOT NULL,
	Ssex CHAR(2) ,
	Sage SMALLINT,
	Sdept CHAR(20),
    PRIMARY KEY(Sno,Cno)  
);  


CREATE TABLE SC         //创建TABLE SC表
(
	Sno CHAR(9) NOT NULL,     //sno不允许有空值
	Sno CHAR(4) NOT NULL,
	Grade SMALLINT,         //有范围无符号,短整形
	
)

    PRIMART KEY(Sno,Cno), //主键
    FOREIGN KEY(Sno) REFERENCES Student(Sno),    //外键 reference加s
    FOREIGN KEY(Sno) references Course(Cno)    //sc表参照 student表

);    参照完整性

列值  属性非空值  

属性值 唯一

检查是否满足条件 

CHECK(Ssex='女' OR Sname NOT LIKE 'Ms.%')

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值