数据库系统概论实验指导书Word格式文档下载.docx
《数据库系统概论实验指导书Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《数据库系统概论实验指导书Word格式文档下载.docx(23页珍藏版)》请在冰豆网上搜索。
NOTNULL主键
姓名
Sname
Varchar(20)
NOTNULL
性别
Ssex
Char
(2)
年龄
Sage
Int
所在系
Sdept
Varchar(50)
课程表:
Course
课程号
Cno
Varchar(3)
课程名
Cname
Char(10)
先行课
Cpon
学分
Ccredit
Smallint
选课表:
SC
成绩
Grade
默认值为0
4.查看表格:
显示当前数据库中所有对象的信息。
5.利用企业管理器删除表:
在企业管理器中,展开指定的数据库和表格项,用右键单击要删除的表,从快捷菜单中选择“除去表”选项,则会出现除去对象对话框。
单击“全部删除”按钮,即可删除表。
6.利用企业管理器删除数据库jxsk。
7.用SQL语言创建数据库jiaoxuedb:
CREATEDATABASEjiaoxuedb
ON
(NAME=jiaoxuedb_dat,FILENAME='
d:
\jiaoxuedb_dat.mdf'
)
LOGON
(NAME=jiaoxuedb_log,FILENAME='
\jiaoxuedb_log.ldf'
GO
8.用SQL语言创建jiaoxuedb中的表:
USEjiaoxuedb
CREATETABLEStudent(
SnoCHAR(10)NOTNULL,
SnameCHAR(10)NOTNULL,
SexCHAR
(2)NULL,
AgeTINYINTNULL,
DeptCHAR(10)NULL)
CREATETABLETeacher(
TnoCHAR(10)NOTNULL,
TnameCHAR(10)NOTNULL,
ProfCHAR(10)NULL,
SalSMALLINTNULL,
CommSMALLINTNULL,
CREATETABLECourse(
CnoCHAR(10)NOTNULL,
CnameCHAR(10)NOTNULL,
ChourTINYINTNULL,
CcreditTINYINTNULL)
CREATETABLESC(
SCORETINYINTNULL)
CREATETABLETC(
CnoCHAR(10)NOTNULL)
9.用ALTERTABLE语句向学生表增加“入学时间”列,其数据类型为日期型,然后再间接删除该列。
10.用ALTERTABLE语句将学生的年龄的数据类型改为半字长(Smallint),查看修改属性后再改回原数据类型。
11.用DROPTABLE语句删除已有的表。
12.用DROPDATABASE语句删除数据库jiaoxuedb。
13.学习SQLSERVER在线文档中关于建立表、删除表,修改表的详细用法。
实验三数据更新
一、实验目的:
掌握用SQL语句实现数据的插入、修改和删除。
1.重建实验二中的数据库jiaoxuedb和其中的表,并插入相应数据值。
插入jiaoxuedb库中各表值:
/*InsertvaluestoStudentTable*/
INSERTINTOStudentVALUES('
001101'
'
宋大方'
男'
19,'
计算机'
002102'
李王'
20,'
信息'
991101'
张彬'
18,'
991102'
王蕾'
女'
991103'
张建国'
电子商务'
991104'
李平方'
991201'
陈东辉'
991202'
葛鹏'
21,'
991203'
潘桃芝'
991204'
姚一峰'
001102'
许辉'
22,'
001201'
王一山'
001202'
牛莉'
002101'
李丽丽'
/*InsertvaluestoTeacherTable*/
INSERTINTOTeacherVALUES('
000006'
许红霞'
39,'
讲师'
1100,1200,'
000007'
许永军'
57,'
教授'
2000,3000,'
000008'
李贵青'
65,'
000009'
王一凡'
43,'
1200,1200,'
000010'
田峰'
33,'
助教'
500,800,'
000001'
李英'
副教授'
1500,2000,'
000002'
张雪'
51,'
1900,3000,'
000003'
张朋'
30,'
1000,1200,'
000004'
王平'
28,'
850,1200,'
000005'
李力'
47,'
1800,3000,'
/*InsertvaluestoCourseTable*/
INSERTINTOCourseVALUEs('
01001'
计算机基础'
60,3)
01002'
程序设计'
80,5)
02003'
数据结构'
60,6)
02001'
数据库'
80,6)
02002'
计算机网络'
01003'
微机原理'
60,8)
02004'
操作系统'
03001'
软件工程'
03002'
大型数据库'
48,2)
03003'
图像处理'
/*InsertvaluestoSCTable*/
INSERTINTOSCVALUES('
88)
93)
90)
98)
74)
85)
64)
33)
35)
76)
/*InsertvaluestoTCTable*/
INSERTINTOTCVALUES('
000011'
2.重建实验二中的数据库jxsk和其中的表,并插入相应的数值。
创建数据库jxsk:
CREATEDATABASEjxsk
(NAME=jxsk_dat,FILENAME='
\jxsk_dat.mdf'
(NAME=jxsk_log,FILENAME='
\jxsk_log.ldf'
创建jxsk中的表:
USEjxsk
CREATETABLES(
SNOCHAR
(2)NOTNULL,
SNCHAR(8)NOTNULL,
SEXCHAR
(2)NULL,
AGETINYINTNULL,
DEPTCHAR(10)NULL)
CREATETABLET(
TNOCHAR
(2)NOTNULL,
TNCHAR(8)NOTNULL,
PROFCHAR(10)NULL,
SALSMALLINTNULL,
COMMSMALLINTNULL,
CREATETABLEC(
CNOCHAR
(2)NOTNULL,
CNCHAR(10)NOTNULL,
CTTINYINTNULL,
ID_TCTINYINTNULL)
CNOCHAR
(2)NOTNULL)
插入jxsk库中各表值:
INSERTINTOSVALUES('
S2'
钱尔'
S3'
孙姗'
S4'
李思'
自动化'
S5'
周武'
S6'
吴丽'
S7'
李奇'
外语'
S8'
古明'
NULL,'
S9'
赵亦'
17,'
INSERTINTOTVALUES('
T5'
张兰'
1300,2000,'
T4'
1600,3000,'
T3'
刘伟'
900,1200,'
T2'
800,1200,'
T1'
1500,3000,'
INSERTINTOCVALUES('
C1'
60,1)
C2'
80,2)
C3'
数字逻辑'
C4'
80,4)
C5'
60,5)
C6'
编译原理'
C7'
60,7)
57)
80)
NULL)
75)
70)
83)
89)
3.将数据库jiaoxuedb中所有的课程课时量增加10%。
4.将数据库jiaoxuedb中信息系全体学生的成绩置0。
5.将数据库jiaoxuedb中电子商务系学生年龄增加1岁。
6.将数据库jiaoxuedb中所课程成绩不及格的记录删除。
7.将数据库jiaoxuedb中计算机系所有学生的选课记录删除。
8.用SQLSERVER企业管理器实现以上操作。
9.学习SQLSERVER在线文档中关于表数据插入、删除、修改的详细用法。
实验四数据完整性
掌握关系数据库中的实体、参照及用户自定义完整性约束定义。
基于jiaoxuedb实验,需按实验三中的数据值建立数据库及其中的表。
1.对各表创建实体完整性。
ALTERTABLEStudent
ADDCONSTRAINTPK_SNOPRIMARYKEY(Sno)
ALTERTABLETeacher
ADDCONSTRAINTPK_TNOPRIMARYKEY(Tno)
ALTERTABLECourse
ADDCONSTRAINTPK_CNOPRIMARYKEY(Cno)
ADDCONSTRAINTUNIQUE_SUNIQUE(Sno)
ALTERTABLETeacher
ADDCONSTRAINTUNIQUE_TUNIQUE(Tno)
ADDCONSTRAINTUNIQUE_CUNIQUE(Cno)
2.创建表之间的参照完整性。
ALTERTABLESCWITHNOCHECK
ADDCONSTRAINTFK_S_SCFOREIGNKEY(Sno)REFERENCESStudent(Sno)
ONDELETECASCADE
ADDCONSTRAINTFK_C_SCFOREIGNKEY(Cno)REFERENCESCourse(Cno)
ALTERTABLETCWITHNOCHECK
ADDCONSTRAINTFK_T_TCFOREIGNKEY(Tno)REFERENCESTeacher(Tno)
ADDCONSTRAINTFK_C_TCFOREIGNKEY(Cno)REFERENCESCourse(Cno)
3.用不同的方法创建下面约束。
(1)“姓名”字段取唯一值:
ADDCONSTRAINTUNIQUE_SNAUNIQUE(Sname)
ADDCONSTRAINTUNIQUE_TNAUNIQUE(Tname)
(2)“性别”字段取值为:
‘男’或‘女’;
默认值:
‘男’;
ALTERTABLETeacherWITHCHECK
ADDCONSTRAINTCHECK_T_