实验1,数据定义 联系客服

发布时间 : 星期六 文章实验1,数据定义更新完毕开始阅读318cad92daef5ef7ba0d3c84

INSERT INTO Teacher (Tno, Tname,Tsex, Tage,Tdept) Values(‘T02’,’王勇’,’M’,38,’ 后勤部’) SELECT * FROM Teacher

(4) 在查询分析器中输入如下SQL语句

USE University_Mis

ALTER TABLE Worker DROP U2

(5) 在查询分析器中输入如下SQL语句

USE University_Mis

INSERT INTO Teacher (Tno, Tname,Tsex, Tage,Tdept) VALUES(‘T02’,’王勇’,’M’,38,’ 后勤部’) SELECT * FROM Teacher

(6) 在查询分析器输入如下SQL语句

USE University_Mis Go

CREATE RULE Rule_sex AS @Value IN (‘F’,’M’) Go

EXEC SP_bindrule Rule_sex, ‘Teacher.[Tsex]’;

(7) 在查询分析器中输入如下SQL语句

USE University_Mis

INSERT INTO Teacher VALUES(‘T03’,’黄号’,’1’,’25’,’ 后勤部’)

17

实验10、触发器

10.1 实验目的

通过实验使学生加深对数据完整性的理解,学会创建和使用触发器。 10.2 实验内容 (用实验9的Teacher表)

(1) 为Teacher表建立触发器T1,当插入或使更新表中的数据时,保证所操作的纪录的Tage值大于0。

(2) 为Teacher表建立触发器T2,禁止删除编号为00001的CEO。

(3) Teacher表中的人员的编号是唯一且不可更变的,创建触发器T3实现更新中编号的不可改变性。

(4) 演示违反T1触发器的约束的插入操作。 (5) 演示违反T1触发器的约束的更新操作。 (6) 演示违反T2触发器的约束的插入操作。 (7) 演示违反T2触发器的约束的更新操作。 10.3 实验步骤

(1) 仍然使用自定义完整性实验中的Teacher表。为此表建立触发器T1,当插入或使更新表中的数据时,保证所操作的纪录的Tage值大于0。 在查询分析器中输入如下SQL语句

USE University_Mis GO

CREATE TRIGGER T1 ON Teacher FOR INSERT,UPDATE AS

IF(SELECT Tage FROM INSERTED)<1 BEGIN

PRINT ‘职工年龄必须是大于0的整数! 操作失败!’ ROLLBACK TRANSACTION END

(2) 为Teacher表建立触发器T2,禁止删除编号为S01的CEO。

在查询分析器中输入如下SQL语句 USE University_Mis GO

CREATE TRIGGER T2 ON Teacher FOR DELETE AS

IF(SELECT Tno FROM DELETED)=’T01’ BEGIN

PRINT ‘此人是CEO! 删除操作失败!’ ROLLBACK TRANSACTION END

18

(3) Teacher表中的人员的编号是唯一且不可更变的,创建触发器T3实现更新中编号的不可改变性。

在查询分析器中输入如下SQL语句 USE University_Mis GO

CREATE TRIGGER T3 ON Teacher FOR UPDATE AS

IF UPDATE(Tno) BEGIN

PRINT ‘职工编号不能修改!’ ROLLBACK TRANSACTION END

(4) 在查询分析器中输入如下SQL语句

USE University_Mis

INSERT INTO Teacher VALUES(‘T03’,’ 李宏’,’F’,-10,’开发部’)

(5) 在查询分析器中输入如下SQL语句

USE University_Mis

UPDATE Teacher SET Tage=-7 WHERE Tno=’T01’

(6) 在查询分析器中输入如下SQL语句

USE University_Mis

DELETE FROM Teacher WHERE Tname=’李用’

(7) 在查询分析器中输入如下SQL语句

USE University_Mis

UPDATE Teacher SET Tno=’T07’ WHERE Tsex=’F’ 19

特别要求与说明

1、每做一个实验都要写实验报告,报告格式见参考模板。

2、以上10个实验中用粗体字书写的实验内容要求同学必须完成,并将相应命令和执行结果窗口剪贴到实验报告中。

3、 本课程实验1至实验9的要求都是统一的,但每个同学在实验时必将其修改成针对自己的、具有个性化的特殊实验要求。修改的关键是在数据库、基本表和属性的命名中必须加上自己的姓名信息。操作方法如下:

① 基本表命名与数据库名类似,都是姓的全拼加上名的第一个字母和下划线组成前缀,比如黄德才姓名为Huang de cai,则前缀是huangdecai_,因此数据库University_Mis和基本表Students分别命名为Huangdc_University_Mis和Huangdc_Students。

② 属性名的前缀以姓名的第一个字母和下划线组成,比如,黄德才姓名为huang de cai,则属性的前缀是hdc_,基本表huangdc_Students中属性名为Sname, Scredit, Sroom就分别命名为hdc_Sname, hdc_Scredit, hdc_Sroom。 4、要求把实验过程、SQL命令和执行结果窗口复制到实验报告中,请从精品课程网站下载毕业设计报告模板。

5、实验报告通过精品课程网站提交。

20