《数据库系统原理》课程实验

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《数据库系统原理》课程实验

姓名:

班级:

学号:

佛山科学技术学院计算机系

2012年12月

目录

一、实验所需表格 (3)

二、实验内容 (3)

2.1实验一SQL数据定义 (3)

2.2实验二SQL数据查询 (7)

2.3实验三连接、嵌套和集合查询 (14)

2.4实验四SQL的数据更新 (21)

2.5实验五视图的建立和维护 (24)

2.6实验六触发器和存储过程 (330)

三、实验感想 (37)

参考资料

1.王珊萨师煊.《数据库系统概论》(第四版).高等教育出版社,2006

2.李存斌.数据库应用技术---SQL Server2000简明教程.中国水利水电出版社,2001

一、实验所需表格

学生-课程数据库xskc中用到的三个表文件如下:

学生表:Student

Sno(学号)Sname(姓名)Ssex(性别)Sage(年龄)Sdept(所在系)200215121李勇男20CS(计算机科学系)200215122刘晨女19CS(计算机科学系)200215123欧阳原野女18MA(数学系)200215125刘阳光男19IS(信息系)

课程表:Course

Cno(课程号)Cname(课程名)Cpno(先修课)Ccredit(学分)1数据库54

2数学2

3信息系统14

4操作系统63

5数据结构74

6数据处理2

7PASCAL64

学生选课表:SC

Sno(学号)Cno(课程号)Grade(成绩)

200215121192

200215121285

200215121388

200215122290

200215122380

二、实验内容

2.1实验一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.定义基本表

利用查询分析器或企业管理器创建基本表,并输入数据。

【题1-01】建立一个学生表Student,它由学号Sno、姓名Sname、性别Ssex、年龄Sage、所在系Sdept五个属性组成。要求“学号”为主键,“姓名”不能为空,“性别”默认值为“男”。

CREATE TABLE Student

(Sno CHAR(9)PRIMARY KEY,

Sname CHAR(20)NOT NULL,

Ssex CHAR(2)DEFAULT‘男’,

Sage INT,

Sdept CHAR(20)

);

说明:在Microsoft SQL Server2000的查询分析器(Query Analyzer)中使用单条SQL语句,其末尾不需要分号“;”作为命令结尾标记。通常,SQL Server 2000对大多数末尾带有分号的SQL命令都能顺利执行,但对少数的SQL命令,末尾若带分号,则SQL Server2000会给出错误信息提示。比如,若在实验五的例1的SQL命令末尾加上一个分号“;”,SQL Server2000就会出现“Incorrect syntax near';'”的提示,虽然SQL Server2000实际上已经执行了该命令。

【题1-02】建立课程表Course,它由课程号Cno、课程名Cname、先修课Cpno、Ccredit学分四个属性组成。要求“课程号”为主键,“课程名”属性不能为空。

CREATE TABLE Course

(Cno CHAR(4)PRIMARY KEY,

Cname CHAR(40)NOT NULL,

Cpno CHAR(4),

Ccredit INT

);

【题1-03】建立学生选修课表SC,包含学号Sno、课程号Cno、成绩Grade 三个字段。要求建立主键及与student、kc表联接的外键,并创建检查约束(Grade>=0and Grade<=100)。

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修改基本表

利用查询分析器修改基本表。

【题1-04】向基本表Student中增加“入学时间”属性列,其属性名为S_entrance,数据类型为日期型。

ALTER TABLE Student ADD S_entrance DATETIME;

【题1-05】将Student表中Sage(年龄)的数据类型改为SMALLINT型。

ALTER TABLE Student ALTER COLUMN Sage SMALLINT;

【题1-06】增加课程名称必须取唯一值的约束条件。

ALTER TABLE Course ADD UNIQUE(Cname);

【题1-07】将Student表的Sdept列允许空值的属性更改为不允许为空。

ALTER TABLE Student ALTER COLUMN Sdept CHAR(20)NOT NULL;

【题1-08】删除Student表中的S_entrance列。

ALTER TABLE Student DROP COLUMN S_entrance;

3删除基本表

【题1-09】删除Student表。

相关文档
最新文档