用SQL语句在SQL Server2000下实现如下功能。所用数据库表结构如下: student(学生表):(sno,学号,9字

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用SQL语句在SQL Server2000下实现如下功能。所用数据库表结构如下: student(学生表):(sno,学号,9字相关的知识,希望对你有一定的参考价值。

用SQL语句在SQL Server2000下实现如下功能。所用数据库表结构如下:
student(学生表):(sno,学号,9字符;sname,姓名,4字符;ssex,性别,1字符;sage,年龄,整数;sdept,所在院系,不超过十字符)。
course(课程表):(cno,课程号,5字符;cname,课程名,10字符;cpno,先修课号,5字符;credit,学分,整数)。
sc(学生选课表):(sno,学号;cno,课程号;grade,成绩,整数)。

1.建立表SC,并指定相应的参照完整性。
2.建立表sc,指定外键sno参照学生表的sno,当删除学生表时级联删除sc表相应记录。
3.建立计算机系(‘CS’)男生的视图。
4.查询至少选修了学生‘200215120’选修的全部课程的学生号码。
5.删除计算机系(‘CS’)所有男生的选课记录。
6.把查询student表和修改学生学号的权限授予用户u2,并允许将此权限再授予其他用户。
7. 查询选修了全部课程的学生姓名。

参考技术A 1.CREATE TABLE SC
(sno varchar(9),
cno varchar(5),
grade int )
2.alter table sc add constraint fk_sd_student
foreign key (sno)
references student (sno) on delete cascade
3.select sdept , sname from student where sdept = '计算机系' and ssex = '男'
4.select sno from sc where cno = '200515120'
5.delete from sc where sno in (select sno from student where sdept = '计算机系' and ssex = '男')
6.grant select , update on student to u2
7.select sname from student where sno in
(select sno , count(sno) from sc group by sno
having count(sno) = '总选修课数' )

以上是关于用SQL语句在SQL Server2000下实现如下功能。所用数据库表结构如下: student(学生表):(sno,学号,9字的主要内容,如果未能解决你的问题,请参考以下文章

sql2000 如何用触发器实现级联删除

SQL Server 快速清除日志文件的方法

在sql server2000中,如何把整型字段转换成字符串型字段?

怎么在sql servler2000中建立一个序列,用sequence写的

用SQL创建存储过程的题目(SQL SERVER2000下)

SQL Server 2008转换成sql 2000数据库如何操作?