new《数据库原理及应用》实验指导书 联系客服

发布时间 : 星期二 文章new《数据库原理及应用》实验指导书更新完毕开始阅读05e8630e804d2b160a4ec017

数据库原理及应用实验指导书

《数据库原理及应用》实验指导书

中北大学 软件学院

1

数据库原理及应用实验指导书

《数据库原理及应用》

实验类别: 课内实验 实验课程名称: 数据库原理及应用 实验室名称:软件工程实验室 实验课程编号: 总学时: 72 学 分: 适用专业: 软件工程

先修课程: 离散数学、计算机导论及操作、数据结构 实验在教学培养计划中地位、作用:

数据库原理及应用是一门理论与实践相结合的课程,上机实验环节是本课程的重要组成部分。实验的目的是为了配合课堂教学,进一步强化对数据库原理的理解。实验的任务是要结合数据库原理和 SQL Server 2005数据库系统,熟练掌握和深入理解课堂教学内容,实现从理论到实践的统一。

2

数据库原理及应用实验指导书

实验一 SQL的数据定义(2学时)

1、实验目的

(1) 掌握DBMS的数据定义功能 (2) 掌握SQL语言的数据定义语句

2、实验内容

(1) 创建、删除表

(2) 查看、修改表的定义 (3) 理解索引的特点 (4) 创建和删除索引

3、实验要求

(1) 熟练掌握SQL的数据定义语句CREATE、ALTER、DROP (2) 写出实验报告

4、实验步骤

设有一个学生-课程数据库,包括学生关系Student、课程关系Course和选修关系SC:学生表:Student(Sno,Sname,Ssex,Sage,Sdept) 课程表:Course(Cno,Cname,Cpno,Ccredit) 学生选课表:SC(Sno,Cno,Grade)

(1) 创建、删除表,例如: CREATE TABLE Student

(Sno CHAR(5) NOT NULL UNIQUE, Sname CHAR(20) UNIQUE, Ssex CHAR(1) , Sage INT,

Sdept CHAR(15)) CREATE TABLE SC(

Sno CHAR(5), Cno CHAR(3), Grade int,

Primary key (Sno, Cno)); DROP TABLE Student

(2) 查看、修改表的定义,例如: ALTER TABLE Student ADD Scome DATETIME

ALTER TABLE Student ALTER COLUMN Sage SMALLINT

(3) 创建和删除索引

CREATE UNIQUE INDEX Stusno ON Student(Sno); CREATE UNIQUE INDEX Coucno ON Course(Cno);

CREATE UNIQUE INDEX SCno ON SC(Sno ASC,Cno DESC); DROP INDEX Stusno

实验二 SQL的单表数据查询(2学时)

1、实验目的

(1) 掌握RDBMS的数据单表查询功能 (2) 掌握SQL语言的数据单表查询语句

2、实验内容

(1) SELECT语句的基本用法

(2) 使用WHERE子句进行有条件的查询

3

数据库原理及应用实验指导书

(3) 使用IN,NOT IN,BETWEEN AND等谓词查询 (4) 利用LIKE子句实现模糊查询 (5) 利用ORDER BY子句为结果排序

(6) 用SQL Server的聚集函数进行统计计算 (7) 用GR0UP BY子句实现分组查询的方法

3、实验要求

(1) 熟练掌握SQL的数据查询语句SELECT (2) 写出实验报告

4、实验步骤

4.1 创建(定义)示例数据库S_T(复习)

(1)利用SQL Server集成管理器(简称SSMS)交互式创建数据库;

(2)利用SQL语句中的Create Database命令创建数据库(在查询子窗口中输入并执行SQL语句。例如:Create Database S_T;

4.2 将S_T设为当前数据库(复习)

例如:use S_T;

4.3 在当前数据库S_T中创建学生表Student、课程表Course和选修表SC(复习)

(1)创建3个表 ① 利用SQL语句中的Create Table命令创建表

create table Student

(Sno CHAR(9) PRIMARY KEY, Sname CHAR(20) UNIQUE, Ssex CHAR(2), Sage SMALLINT, Sdept CHAR(20) ); go

/*表Student的主码为Sno,属性列Sname取唯一值*/ create table Course

(Cno CHAR(4) PRIMARY KEY, Cname CHAR(40), Cpno CHAR(4), Ccredit SMALLINT,

FOREIGN KEY (Cpno) REFERENCES Course(Cno) ); go

/*表Course的主码为Cno,属性列Cpno(先修课)为外码,被参照表为Course,被参照列是Cno*/

create table SC (Sno CHAR(9), Cno CHAR(4), Grade SMALLINT,

primary key (Sno, Cno),

FOREIGN KEY (Sno) REFERENCES Student(Sno), FOREIGN KEY (Cno) REFERENCES Course(Cno) ); go

/*表SC的主码为(Sno, Cno), Sno和Cno均为外码,被参照表分别为Student和Course,被参照列分别为Student.Sno和Course.Cno*/

4