数据库实验实验五Word下载.docx

上传人:b****4 文档编号:17965576 上传时间:2022-12-12 格式:DOCX 页数:18 大小:335.56KB
下载 相关 举报
数据库实验实验五Word下载.docx_第1页
第1页 / 共18页
数据库实验实验五Word下载.docx_第2页
第2页 / 共18页
数据库实验实验五Word下载.docx_第3页
第3页 / 共18页
数据库实验实验五Word下载.docx_第4页
第4页 / 共18页
数据库实验实验五Word下载.docx_第5页
第5页 / 共18页
点击查看更多>>
下载资源
资源描述

数据库实验实验五Word下载.docx

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

数据库实验实验五Word下载.docx

createtableteacher103--老师

Tnochar(3)notnullprimarykey,--教工编号(主码)

Tnamenchar(4)notnull,--教工姓名

Tsexnchar

(1)notnull,--教工性别

Tbirthdaydate,--教工出生年月

Profnchar(3),--职称

Departnchar(5)notnull--教工所在部门

createtableCourse103--课程

Cnochar(5)notnullprimarykey,--课程号

CnameNvarchar(25)notnull,--课程名称

Tnochar(3)notnullreferencesteacher103(Tno)--教工编号(外码)

createtableScore103--分数

Snochar(3)notnullreferencesstudent103(Sno),--学号(外码)

Cnochar(5)notnullreferencesCourse103(Cno),--课程号(外码)

primarykey(Sno,Cno),

DegreeDecimal(4,1)--成绩

表中数据如下,请插入相应的数据表中:

(问题如果数据更多,除了用insert语句外,有没有其他更快的方法?

可以使用表格导入数据

(一)Student103

Sno

Sname

Ssex

Sbirthday

class

108

曾华庆

1999-09-01

95033

105

匡明强

1998-10-02

95031

107

王丽娜

1996-01-23

101

李君帅

1996-02-20

109

王芳芳

1995-03-10

103

陆君茹

1994-04-03

104

陈文文

1994-08-13

95032

106

李丽丽

1996-11-13

BULKINSERTStudent103

FROM'

H:

\大二下\DB\s.txt'

with

(FIRSTROW=2)

(二)Course103

Cno

Cname

Tno

3-105

计算机导论

825

3-245

操作系统

804

3-235

数据结构

3-236

离散数学

831

6-166

数字电路

856

9-888

高等数学

9-886

[数学100%技巧

4-123

毛泽东思想和中国特色社会主义理论体系概论]

811

4-101

[马克思主义基本原理]概论

BULKINSERTCourse103

\大二下\DB\c.txt'

表(三)Score103

Degree

86

75

68

92

88

76

64

91

78

85

79

81

77

98

87

NULL

注:

null怎么导入

最后含有null的记录可以用:

insertScore103(Sno,Cno)values('

103'

'

6-166'

)或者直接编辑插入

表(四)Teacher103

Tname

Tsex

Tbirthday

Prof

Depart

李诚

1958-12-02

副教授

计算机系

张旭

1969-03-12

讲师

电子工程系

王萍

1972-05-05

助教

828

1976-11-13

刘冰

1977-08-14

李强栋

1977-09-24

社科系

BULKINSERTTeacher103

\大二下\DB\t.txt'

(FIRSTROW=2)

select*fromTeacher103

六、验证性实验

以下查询要求在逐个语句执行,执行后将执行结果记录下来:

1.无条件查询全部数据

USESTUDENT

SELECT*FROMSTUDENT103

2.在SELECT关键字后指明要检索的列名

(1)查询学生表的学生学号和姓名

SELECTSNO,SNAMEFROMSTUDEN103

(2)查询STUDENT表中的班级名

SELECTclassFROMSTUDENT103

(3)查询S表中不重复的班级

SELECTDISTINCTclassFROMSTUDENT103

3.改变列标题的检索

(1)使用空格形式:

列名新标题

SELECTSNO学号,SNAME姓名FROMSTUDENT103

(2)使用“AS”形式,列名AS新标题

SELECTSNOAS'

学号'

SNAMEAS'

姓名'

FROMSTUDENT103

(3)使用“AS”形式,列名AS新标题

学号'

姓名'

(4)使用“AS”形式,列名AS新标题

SELECT'

=SNO,'

=SNAMEFROMSTUDENT103

4.有条件选择的查询

在S表检索“95033”的学生信息

SELECT*FROMSTUDENT103WHERECLASS='

95033'

(1)在S表中检索姓“王”的学生信息

WHEREsnamelike'

王%'

 

(2)在SC表检索’3-105’选修课成绩为空的选课记录

SELECTSNO,CNOFROMSCORE103

WHEREcno='

3-105'

andDegreeisnull

(3)检索年龄为21,25,22的学生学号、姓名

SELECTSNO,SNAMEFROMSTUDENT103

WHEREYEAR(GETDATE())-YEAR([Sbirthday])IN(21,25,22)

5.多表查询

查询所有人的学号,姓名,课程号,课程名,成绩

Selects.snosname,o,cname,DegreefromSTUDENT103sjoinSCORE103sc

Ons.sno=sc.snojoincourse103cono=o

注意:

表的别名

6.对检索结果进行排序

SELECT*FROMSCORE103

WHEREDegreeISnotNULL

ORDERBYSNO,CNODESC

七、设计性实验

(1).实验要求

1、查询Student表中95031班的所有记录的sno,Sname和Ssex列。

selectSno,Sname,Ssexfromstudent103whereclass='

95031'

2、查询教师所有的单位即不重复的Depart列。

selectDISTINCTDepartfromteacher103

3、查询Score表中成绩在60到80之间的所有记录。

select*fromScore103wheredegree>

=60anddegree<

=80

4、查询Score表中成绩为85,86或88的记录。

select*fromScore103wheredegree=85ordegree=86ordegree=88

5、查询Student表中“95031”班或性别为“女”的同学记录。

select*fromstudent103whereclass='

orSsex='

女'

6、以Cno升序、Degree降序查询Score表的所有记录。

select*fromScore103ORDERbyCno,Degreedesc

7、查询课程名中的第15个字符是‘理’课程信息。

select*fromCourse103wherecnamelike'

______________理%'

8、查询Student表中不姓“王”且姓名第二字为‘君’的同学记录。

select*fromStudent103wherenotSnamelike'

andSnamelike'

_君%'

9、查询Student表中每个学生的姓名和年龄。

selectSname,year(getdate())-year(Sbirthday)agefromstudent103

10、查询Student表中最大和最小的Sbirthday日期值。

selecttop1SbirthdayfromStudent103orderbySbirthday

selecttop1SbirthdayfromStudent103orderbySbirthdaydesc

11、以班号和年龄从大到小的顺序查询Student表中的全部记录。

select*,year(getdate())-year(Sbirthday)agefromstudent103orderbyclass,age

12.查询Student表本月过生日同学的信息,包括学号,姓名,课程号,课程名,任课教师和成绩。

Selects.sno,s.sname,o,cname,t.Tname,DegreefromSTUDENT103sjoinSCORE103sc

Ons.sno=sc.snojoincourse103cono=ojointeacher103tont.Tno=c.Tnowheremonth(getdate())-month(Sbirthday)=0

13.查询选修课程名中含有%的信息,包括学号,姓名,课程号,课程名和成绩。

Selects.sno,s.sname,o,cname,DegreefromSTUDENT103sjoinSCORE103sc

Ons.sno=sc.snojoincourse103cono=owhereCnamelike'

%[%]%'

14.查询选修课程名中含有’[‘或’]’的信息,包括学号,姓名,课程号,课程名和成绩。

%或%'

15.查询选修课程名中含有’[‘和’]’的课程信息,包括学号,姓名,课程号,课程名和成绩。

%和%'

16.查询所有学生信息,包括学号,姓名,课程号,课程名,任课教师和成绩(包括没上课的学生,没有选修的课程以及没上课的教师)。

Selects.sno,s.sname,o,cname,t.Tname,DegreefromSTUDENT103sfulljoinSCORE103sc

Ons.sno=sc.snofulljoincourse103cono=ofulljointeacher103tont.Tno=c.Tno

五、实验小结(实验中遇到的问题及解决过程、实验中产生的错误及原因分析、实验体会和收获)

1、导入的时候要注意编码。

2、查询的时候需要掌握一些匹配规则,特别是中文,或者特殊符号。

3、插入NULL值可以右键编辑插入或者是用插入命令直插入有值得部分。

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

当前位置:首页 > PPT模板 > 其它模板

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

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