sql数据库实例数据库入门Word格式文档下载.docx

上传人:b****0 文档编号:13476244 上传时间:2022-10-11 格式:DOCX 页数:18 大小:571.18KB
下载 相关 举报
sql数据库实例数据库入门Word格式文档下载.docx_第1页
第1页 / 共18页
sql数据库实例数据库入门Word格式文档下载.docx_第2页
第2页 / 共18页
sql数据库实例数据库入门Word格式文档下载.docx_第3页
第3页 / 共18页
sql数据库实例数据库入门Word格式文档下载.docx_第4页
第4页 / 共18页
sql数据库实例数据库入门Word格式文档下载.docx_第5页
第5页 / 共18页
点击查看更多>>
下载资源
资源描述

sql数据库实例数据库入门Word格式文档下载.docx

《sql数据库实例数据库入门Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《sql数据库实例数据库入门Word格式文档下载.docx(18页珍藏版)》请在冰豆网上搜索。

sql数据库实例数据库入门Word格式文档下载.docx

当学生选修一门新的课程后,Statistics表的cNumber自动加1,且creditNumber自动增加新选课程的学分。

8、创建视图:

找出所有已修学分超过6、所修课程平均分不低于60的学生的基本信息、以及所修课程的平均分。

按照平均分排序,若平均分相同按照学号排序。

9、对于如下一组数据操作:

(1)select*fromcourse;

(2)select*fromcoursewherecname=’数据库’

(3)select*fromcoursewherecredit=3

(4)select*fromcoursewherecredit>

2andcredit<

5

(5)updatecoursesetcredit=3wherecredit=2

对Course表的credit属性创建索引,并给出上述查询在创建了该索引后的执行计划;

去掉Course表的credit属性上创建的索引,并给出上述查询的执行计划。

对上述有无索引个查询执行的情况进行对比分析,总结出什么时候索引有效?

10、将表Student、Course、Enroll作内连接的结果发布为HTML网页格式。

 

二、实验步骤及分析过程

1、设计并在MSSQLServer2000中创建以上表结构,并设置完整性约束。

(1)创建数据库SC。

SQL语句为:

createdatabaseSC创建后的数据库如图1。

(2)创建表

创建学生表:

createtableStudent(

snovarchar(10)notnullprimarykey,

snamevarchar(50)notnull,

ageint,

sexvarchar

(2)notnull

创建课程表:

createtableCourse(

cnovarchar(10)notnullprimarykey,

cnamevarchar(50)notnull,

creditintnotnull

创建注册表:

createtableEnroll(

snovarchar(10)notnull

referencesStudent(sno),

cnovarchar(10)notnull

referencesCourse(cno),

gradeint,

primarykey(sno,cno)

创建选课情况表:

createtableStatisticss(

snovarchar(10)notnullprimarykey

cNumberintnotnull,

creditSumintnotnull,

创建后的表如图2。

(3)插入数据

Student表:

insertintoStudentvalues('

2008001'

'

李贵斌'

22,'

男'

2008002'

冉从宝'

21,'

2008003'

杨文学'

20,'

2008004'

杨璐'

女'

2008005'

李小萌'

Course表:

insertintoCoursevalues('

001'

数据库'

4)

002'

java'

3)

003'

操作系统'

5)

004'

软件工程'

005'

计算机英语'

2)

Enroll表:

insertintoEnrollvalues('

89)

98)

85)

88)

90)

78)

79)

(4)查看表的内容

select*fromStudent结果如图3。

select*fromCourse结果如图4。

select*fromEnroll结果如图5。

2、查询所有选修课程学生的基本信息、课程信息及相应的考试成绩。

selecta.sno,a.sname,a.age,a.sex,o,ame,b.credit,c.grade

fromStudenta,Courseb,Enrollc

wherea.sno=c.snoando=o

执行结果如图6所示。

执行结果分析:

只显示了选了课程的学生信息。

3、查询所有学生的信息,若已选课就还要给出选修课程的信息及考试成绩。

selecta.sno,a.sname,a.sex,a.age,o,ame,d.credit,d.grade

fromStudentaleftouterjoin

(selecto,ame,b.credit,c.grade,c.sno

fromCourseb,Enrollcwhereo=o)d

ona.sno=d.sno

执行结果如图7所示。

不但列出选了课程的学生而且还列出来没选课程的学生信息。

4、查询所有课程的信息,若课程有学生选修就还要给出选修课程的学生的信息及考试成绩。

selecto,ame,a.credit,d.sno,d.sname,d.sex,d.age,d.grade

fromCoursealeftouterjoin

(selectb.sno,b.sname,b.age,b.sex,c.grade,o

fromStudentb,Enrollcwhereb.sno=c.sno)d

ono=o

执行结果如图8所示。

不但列出被选课程的信息和学生选课情况而且还列出来没被选课程的信息。

5、查询选修名为“数据库”的课程的考试成绩最高的学生的信息。

(1)先查看选了数据库课程的学生信息。

selecta.sno,a.sname,a.sex,a.age,ame,c.grade

fromStudenta,Courseb,Enrollc

wherea.sno=c.snoando=oandame='

执行结果如图9所示。

有三位学生选修了数据库课程。

(2)查询选修“数据库”课程的考试成绩最高的学生的信息。

selecta.sno,a.sname,a.sex,a.age,ame,d.grade

fromStudenta,

(selecto,ame,c.grade,c.snofromCourseb,Enrollc

whereo=oandame='

)d

wherea.sno=d.snoandd.grade=(selectmax(grade)

from(selecto,ame,c.grade

fromCourseb,Enrollcwhereo=o)d

whereame='

执行结果如图10所示。

与图9结合比较,图10了列出了选修“数据库”课程成绩最高学生信息。

6、对Student的age创建规则,满足18≤age≤25,并给出验证实例及验证结果。

(1)创建规则并且绑定它。

createruleage_ruleas

@age>

=18and@age<

=25

sp_bindruleage_rule,'

Student.age'

(2)插入数据检验。

2008006'

李志锋'

(所影响的行数为1行)

2008007'

李小龙'

32,'

2008008'

杨一民'

17,'

服务器:

消息513,级别16,状态1,行1

列的插入或更新与先前的CREATERULE语句所强制的规则冲突。

该语句已终止。

冲突发生于数据库'

SC'

,表'

Student'

,列'

age'

语句已终止。

规则设置成功。

7、创建触发器:

createtriggerinsert_statisticssonEnroll

forinsertas

begin

updateasetcNumber=cNumber+d.countCno,credit

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 党团工作 > 入党转正申请

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1