数据库原理实验指导书(带SQL语句)

2026/4/24 12:41:55

实验六 数据完整性

一、学时:2学时 二、实验目的

熟悉和掌握使用SQL查询分析器用PRIMARY KEY、CHECK、FOREIGN KEY……REFERENCES、NOT NULL、UNIQUE等关键字验证SQL SERVER 2000的实体完整性、参照完整性及用户定义完整性。 三、实验准备

1、熟悉SQL SERVER 工作环境;

2、复习有关建表操作的SQL语言命令; 四、实验容

1、利用SQL查询分析器用PRIMARY KEY子句保证实体完整性 在查询分析器窗体下键入如下命令:

CREATE TABLE Student1(Sno CHAR(5) NOT NULL UNIQUE, Sname CHAR(8), Ssex CHAR(1), Sage INT,

Sdept CHAR(20),

CONSTRAINT PK_Student PRIMARY KEY(sno))

运行后插入、更改数据并观察结果;

2、利用SQL查询分析器用FOREIGN KEY……REFERENCES子句保证参照完整性 在查询分析器窗体下键入如下命令:

CREATE TABLE SC(sno CHAR(5) NOT NULL UNIQUE,

cno CHAR(5) NOT NULL UNIQUE, grade INT,

CONSTRAINT FK-SC FOREIGN KEY(sno,cno)

REFERENCES ( Student(sno),Course(cno)) ON DELETE CASCADE); 运行后插入、更改数据并观察结果;

3、利用SQL查询分析器用短语NOT NULL、UNIQUE、CHECK保证用户定义完整性

CREATE TABLE Student(sno CHAR(5) ,

sname CHAR(8) CONSTRAINT U1 UNIQUE, ssex CHAR(1) ,

sage INT CONSTRAINT U2 CHECK FOR sage<=28, sdept CHAR(20),

CONSTRAINT PK-Student PRIMARY KEY(sno))

运行后插入、更改数据并观察结果;

实验七 存储过程的使用

一、学时:2学时 二、实验目的

熟练掌握使用SQL SERVER 2000创建和执行存储过程的方法。 熟练掌握存储过程的删除操作。 三、实验准备

1.熟悉SQL SERVER 2000设计环境; 2.熟悉存过过程的创建方法、步骤 四、实验容

1、利用企业管理器或查询分析器创建proc_s存储过程。在查询分析器中建立存储过程的命令如下:

create procedure proc_s as

select * from s

2、使用EXECUTE语句执行存储过程并观察结果。命令如下:

exec proc_s

3、利用企业管理器或查询分析器创建proc_goods存储过程。在查询分析器中建立存储过程的命令如下:

create procedure proc_goods toyname varchar(20) as

select * from s where sname=toyname

4、使用EXECUTE语句执行存储过程并观察结果。命令如下:

exec proc_goods

5、在查询分析器中使用drop procedure删除上面建立的存储过程。

实验八 事务的使用

一、学时:2学时 二、实验目的 熟练掌握事务的概念; 掌握使用事务的方法。 三、实验准备 1.熟悉SQL SERVER 2000设计环境; 2.熟悉事务的概念及创建和结束的方法 四、 实验容 有一个账户表,如表三所示,请用企业管理器或查询分析器创建它,并输入表四所示的数据。 表三 账户表的结构(account) 字段名称 账号 金额 表四 账户表的数据 账号 A B 金额 7000 5000 数据类型 int money 长度 4 主键 Y 使用事务,完成由A账户向B账户转4000元。 实验操作: 1. 打开查询分析器,输入如下代码: BEGIN TRANSACTION UPDATE 账户表 SET 金额=金额-4000 WHERE 账号='A' UPDATE 账户表 SET 金额=金额+4000 WHERE 账号='B' COMMIT TRANSACTION 单击工具栏中的运行按钮,运行命令,完成转账。 2. 设置事务的隔离级别 打开一个查询分析器,输入如下代码: SET TRANSACTION ISOLATION LEVEL READ COMMITTED BEGIN TRANSACTION UPDATE 账户表 SET 金额=金额-4000 WHERE 账号='A' UPDATE 账户表 SET 金额=金额+4000 WHERE 账号='B' 单击工具栏中的运行按钮,启动一个转账的事务,但并未提交事务。 再打开一个查询分析器,输入如下代码:

BEGIN TRANSACTION SELECT * FROM 表

单击工具栏中的运行按钮,看看有何反映?

在不同事务的隔离级别下,应有不同的结果,在默认事务隔离级别下(READ COMMITTED),应等待另一个事务的完成。切换到第一个查询分析器窗口,输入“Commit”或“Rollback”,看看第二个查询分析器窗口的反映。 反复更改隔离级别,看看结果的变化。


数据库原理实验指导书(带SQL语句).doc 将本文的Word文档下载到电脑
搜索更多关于: 数据库原理实验指导书(带SQL语句) 的文档
相关推荐
相关阅读
× 游客快捷下载通道(下载后可以自由复制和排版)

下载本文档需要支付 10

支付方式:

开通VIP包月会员 特价:29元/月

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:xuecool-com QQ:370150219