学生选课建表应用

/*
学生(学号,姓名,性别,年龄,所在系);
课程(课程号,课程名,先行课),
选课(学号,课程号,成绩)。
用 Transact-SQL完成下列操作。
l)建立学生选课库。
2)建立学生、课程和选课表。
3)建立各表以主码为索引项的索引。
4)建立学生性别只能为“男”或“女”的规则,性别为“男”的缺省,并将它们绑定在学生表上。
5)建立在对选课表输入或更改数据时,必须服从参照完整性约束的INSERT和UPDATE触发器。
6)建立在删除学生记录时,同时也要把相应的选课记录删除的触发器。
7)查询各系及学生数,最后来出共有多少系和多少学生。
8)将学生表和选课表进行内连接、左外连接和右外连接。
9)列出学生学号、姓名及学习情况。学习情况用好、较好、一般或较差表示。当平均成绩大于85分时,学习情况为好;当平均成绩在70~85分之间,学习情况为较好;当平均成绩在60~70分之间,学习成绩为一般;平均成绩在60分以下的为学习情况较差。
*/
--Stu(Sno,Sname,Ssex,Sage,Sdpm);
--Course(Cno,Cname,Cprv);
--CoSelected(Sno,Cno,grade);
Create table Stu(Sno char(5) not null unique,
             Sname char(8) unique,
             Ssex char(2) check(Ssex in('男','女')),
             Sage char(3),
             primary key(Sno));
Create table Course(Cno char(5) not null unique,
             Cname char(20) unique,
             Cprv  char(20),
             primary key(Cno));
Create table CoSelected(Sno Char(5) not null,
             Cno Char(5) not null,
             --grade Char(3),
             primary key(Sno,Cno),
             foreign key(Sno) references Stu(Sno),
             foreign key(Cno) references Course(Cno));

 

select * from stu
--alter table Stu add depm char(30);
--update stu set depm='计算机系' where Sno='00001';
--update stu

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值