- 1、本文档共50页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[工学]数据库系统原理实验报告
目录
实验一 SQL数据定义功能实验 2
实验二 SQL数据查询 9
实验三 SQL的数据更新 27
实验四 视图的定义和维护 31
实验五 宿主语言操纵数据库实验 39
参考资料
1.王珊 萨师煊.《数据库系统概论》(第四版).高等教育出版社,2006
2.李存斌.数据库应用技术---SQL Server 2000简明教程.中国水利水电出版社,2001
实验一 SQL数据定义功能实验
一、实验目的和要求
1.掌握利用SQL查询分析器和企业管理器进行数据库及基本表的定义、删除与修改;
2.掌握索引的建立与删除的方法。
二、实验内容与步骤
(一)建立数据库
通过企业管理器或查询分析器建立学生-课程数据库xskc。
create database xskc
on
( name=xskc_data,
filename=e:\sjksy\xskc_data.mdf)
log on
( name=xskc_log,
filename=e:\sjksy\xskc_log.ldf)
注:先在E:盘上建立一个文件夹(例如:E:\sjksy),数据库文件保存到自建的文件夹中。
(二)基本表的定义、修改与删除
1.定义基本表
利用查询分析器或企业管理器创建基本表,并输入数据。
完成P85 例5、例6、例7。
例5 建立一个学生表Student。这里要求Sno和Sname不能为空值,且取值唯一。
CREATE TABLE Student
(Sno CHAR(9) PRIMARY KEY, /* 列级完整性约束条件,Sno是主码 */
Sname CHAR(20) UNIQUE, /* Sname取唯一值 */
Ssex CHAR(2),
Sage INT,
Sdept CHAR(20)
);
说明:在Microsoft SQL Server 2000的查询分析器(Query Analyzer)中使用单条SQL语句,其末尾不需要分号“;”作为命令结尾标记。通常,SQL Server 2000对大多数末尾带有分号的SQL命令都能顺利执行,但对少数的SQL命令,末尾若带分号,则SQL Server 2000会给出错误信息提示。 比如,若在实验四的例1的SQL命令末尾加上一个分号“;”,SQL Server 2000就会出现“Incorrect syntax near ;”的提示,虽然SQL Server 2000实际上已经执行了该命令。
例6 建立课程表Course,其属性名意义分别为Cno-课程号, Cname-课程名, Cpno-先修课课程号, Ccredit-学分。
CREATE TABLE Course
(Cno CHAR(4) PRIMARY KEY, /* 列级完整性约束条件,Cno是主码 */
Cname CHAR(40),
Cpno CHAR(4),
Ccredit INT,
);
例7 建立学生选修课表SC。其中的属性名意义分别为Sno-学号,Cno-课程号和Grade-成绩。
CREATE TABLE SC
( Sno CHAR(9),
Cno CHAR(4),
Grade INT,
PRIMARY KEY(Sno,Cno),
FOREIGN KEY(Sno) REFERENCES Student(Sno),
FOREIGN KEY(Cno) REFERENCES Course(Cno)
);
2 修改基本表
利用查询分析器或企业管理器修改基本表:完成P87 例8、例9、例10。
例8 向基本表Student中增加“入学时间”属性列,其属性名为S_entrance,数据类型为日期型。
ALTER TABLE Student ADD S_entrance DATETIME;
例9 将Sage(年龄)的数据类型改为SMALLINT型。
ALTER TABLE Student ALTER COLUMN Sage SMALLINT;
例10 增加课程名称必须取唯一值的约束条件。
ALTER TABLE Course ADD UNIQUE(Cname);
注意:SQL Server 2000 增加了删除属性的命令。比如,删除属性列S_entrance的命令为:
ALTER TABLE Student DROP COLUMN S_entra
文档评论(0)