文档库 最新最全的文档下载
当前位置:文档库 › 实验七数据完整性实验

实验七数据完整性实验

实验七数据完整性实验
实验七数据完整性实验

实验七:数据完整性实验

实验目的:

加深对数据完整性的理解。

实验内容:

数据库的完整性设置。

实验步骤:

可视化界面的操作方法:

一、实体完整性

1.将student表的“sno”字段设为主键:在表设计界面中,单击左边的行选定块,选定“sno”字段,单击工具按钮设置主键。如图1所示:

图1

1.将“sc”表的“sno”和“cno”设置为主键:在表设计界面中,单击并按住Ctrl 键拖动左边的行选定块,选定sno和cno字段,单击工具按钮设置主键。如图

2所示:

图2

二、域完整性

3. 将“ssex”字段设置为只能取“男”,“女”两值:在表设计界面,点击鼠标右键——CHECK 约束,——添加约束,添加CK_student_sex名称,然后在约束表达式框中输入“ ssex in ('男','女') ”。如图3所示。

图3

三、参照完整性

4. 将“student”表和“sc”表中的“sno”字段设为参照: 打开“sc”表的设计界面, 点击工具栏按钮, 在弹出的属性(properties)对话框中点击“新建”按钮,在“主键表(Primary key table)”下拉框中选择“student”表,在其下的字段选择框中选择“sno”,在“外键表(Foreign key table)”下拉框中选择“sc”表,在其下的字段选择框中选择“sno”,单击关闭即可。见图4。

图4

命令方式操作方法:

一、实体完整性

1.将“student”表的“sno”字段设为主键:当“student”表已存在则执行:

当“student”表不存在则执行:

注:可用命令“drop table student”删除“student”表

2. 添加一身份证号字段,设置其惟一性.(注: 操作前应删除表中的所有记录)

3. 将“sc”表的“sno”和“cno”设置为主键:

当“sc”表已存在则执行:

当“sc”表不存在则执行:

二、域完整性

4. 将“ssex”字段设置为只能取“男”,“女”两值:

当“student”表已存在则执行:

当“student”表不存在则执行:

5. 设置学号字段只能输入数字:

6. 设置身份证号的输入格式:

7. 设置18位身份证号的第7位到第10位为合法的年份(1900-2050)

三、参照完整性

9. 设置男生的年龄必须大于22, 女生的年龄必须大于20.

10. 将“student”表和“sc”表中的“sno”字段设为参照:

当“sc”表已存在则执行:

当“sc”表不存在则执行:

四、完整性验证

1.实体完整性:在“student”表数据浏览可视化界面中输入学号相同的两条记录将会出现错误如图5所示:

图5

或者在命令窗口输入下面两条命令也会出现错误提示:

insert into student values('95003','张三','男',24,'CS','422229X') insert into student values('95001','李四','女',21,'CS','422229')

图6

下面的语句用来验证“sc”表中的实体完整性:insert into sc values('95002', '10',65) insert into sc values('95002', '10',90)

图7

2. 域完整性:

使用下面的语句验证“ssex”字段的域完整性:

insert into student values('95009','张匀','大',20,'CS',‘422229X’)

3.参照完整性:

使用下面的语句“验证”sc表中的“sno”字段的域完整性(假设student表中没有学号为“95998”的学生记录):

insert into sc values('98998', '10',98)

思考:

建立课程的实体完整性, 和课程号cno的参照完整性;实验小结:

实验6 数据完整性

一、实验目的 1.掌握Transact-SQL语句(CREATE RULE、DROP RULE)创建和删除规则的方法。 2.掌握系统存储过程sp_bindrule、sp_unbindrule绑定和解除绑定规则的操作方法,以及sp_help、sp_helptext查询规则信息、sp_rename更名规则的方法。 3.掌握Transact-SQL语句(CREATE DEFAULT、DROPDEFAULT)创建和删除默认对象的方法。4.掌握系统存储过程sp_bindefault、sp_unbindefault绑定和解除绑定默认对象的操作方法,以及sp_helptext查询规则信息。 5.掌握SQL Server管理平台和Transact-SQL语句(CREATE TABLE、ALTER TABLE)定义和删除约束的方法,并了解约束的类型。 二、实验内容及步骤 (1)为studentsdb数据库创建一个规则,限制所输入的数据为7位0~9的数字。 ①复制student_info表命名为stu_phone,在stu_phone表中插入一列,列名为“电话号码”。完成以下代码实现该操作。 SELECT * INTO stu_phone FROM student_info ALTER TABLE stu_phone ADD CHAR(7)NULL stu_phone表结构如图1-10所示。 图1-10 stu_phone表结构 ②创建一个规则phone_rule,限制所输入的数据为7位0~9的数字。实现该规则的代码为 CREATE phone_rule AS @phone LIKE '[0-9][0-9][0-9][0-9][0-9][0-9][0-9]' ③使用系统存储过程sp_bindrule将phone_rule规则绑定到stu_phone表的“电话号码”列上。实现该操作的代码为 sp_bindrule,'stu_phone.电话号码' ④输入以下代码,进行一次插入操作: INSERT INTO stu_phone(学号,姓名,电话号码) VALUES('0009','王国强','1234yyy') 产生以下出错信息: 消息513,级别16,状态0,第1 行 列的插入或更新与先前的CREATE RULE 语句所指定的规则发生冲突。该语句已终止。冲突发生于 数据库'studentsdb',表'dbo.stu_phone',列'电话号码'。 语句已终止。

实验室数据完整性

实验室数据完整性 CFDA飞检通告中药企缺陷汇总 近几年对于制药企业人都不陌生的一个名称就是数据完整性,然而它不是现在才有的,只是曾经GMP检查的一个盲区。 实验室由于其涉及的数据信息量大,首当其冲成为数据完整性的重灾区。 从国家局发布的飞行检查数据显示自2015年12月1日计算机化系统生效以来,12家问题企业涉及实验室数据完整性缺陷的有6家,占总数的50%,而自2016年发布的5家问题企业有4家涉及。涉及实验室数据完整性缺陷容主要有以下几方面: 1)电子数据完全性不足:例如多人共用登录密码,无权限受控,缺审计追踪、修改数据、实验数据未进行备份等功能; 2)修改系统时间; 3)检验记录涉嫌造假,仪器使用日志不真实,涉嫌一图多用; 4)记录不规不完整等。

CFDA飞行检查实验室数据完整性缺陷汇总: 一、健朗药业有限责任公司 2015.12.23 实验室数据完整性缺陷容: 奥拉西坦成品原始检验记录中采用红外光谱仪鉴别时,选择性的采用仪器保存的工作对照品图谱比对作为检验结果进行判定; 检验用高效液相色谱仪、气相色谱仪,多人共用登录密码,无权限受控,缺审计追踪等功能,不能确保图谱、数据的完整性。 https://www.wendangku.net/doc/6318375877.html,/WS01/CL1681/139041.html 二、省辉南三和制药 2015.12.28 实验室数据完整性缺陷容: 检验记录涉嫌造假,仪器使用日志不真实。在该企业液相工作站打印出的精制冠心片药粉液相色谱图,批号为20130301、20140501、20140801、20140802、20150901样品液相色谱图高度一致,涉嫌一图多用的数据完整性问题。

实验8 数据完整性实验

实验8 数据完整性实验 1.实验目的 本实验的目的是通过实验使学生加深对数据完整性的理解,学会创建和使用触发器。2.实验时数4学时 [相关知识] SQL Server实现数据完整性的具体方法有4种:约束、缺省、规则和触发器。其中约束和缺省在实验一中已接触过。本实验重点学会创建和使用触发器。 触发器是实施复杂完整性的特殊类型的存储类型。触发器不需要专门语句调用,当对它所保护数据进行修改时自动激活,以防止对数据进行不正确,未授权或不一致的修改。 创建触发器的语法为: CREA TE TRIGGER <触发器> ON <表名> [WITH ENCRYPTION] FOR {[DELETE][,][INSERT][,][UPDA TE]} [WITH APPEND] [NOT FOR REPLICA TION] AS 其中: 1)WITH ENCRYPTION 为加密选项。 2)DELETE 选项为创建DELETE 触发器。DELETE触发器的作用是当对表执行DELETE操作时触发器被激活,并从指定表中删除元组,同时将删除的元组放入一 个特殊的逻辑表(delete表)中。触发器的动作可以检查delete表中的数据,以确 定下一步该如何处理。 3)INSERT选项为创建INSERT触发器。INSERT触发器在对指定表中执行插入数据操作时激活,激活后将插入表中的数据拷贝并送入一个特殊的逻辑表(inserted 表) 中,触发器会根据INSERT表中的值决定如何处理。 4)UPDA TE选项为创建UPDA TE触发器。UPDA TE触发器仅在对指定表中进行更新数据操作时激活。UPDA TE触发器激活后把将要被更新的原数据移入delete表中再 将要被更新后的新数据的备份送入insert表中,UPDA TE触发器对delete和inserted 表进行检查,并决定如何处理。 5)NOT FOR REPLICA TION 选项说明当一个复制过程在修改一个触发器表时,与该表相关联的触发器不能被执行。 一个触发器只适用于一个表,每个表最多只能有三个触发器,它们分别是INSERT、UPDA TE和DELETE触发器。触发器仅在实施数据完整性和处理业务规则时使用。 3.实验内容 本实验的内容为: 使用SQL设计触发器,通过SQL Server企业管理器定义它们。 具体完成下面例题:利用触发器来保证学生选课库中选课表的参照完整性,以维护其外码与参照表中的主码一致。 CREA TE TRIGGER SC_inserted ON 选课 FOR INSERT

8实验八 数据库的完整性

实验八实现数据完整性一、实验目的 (1)实现数据完整性的概念及实施数据完整性的重要性。 (2)掌握数据完整性的分类。 (3)掌握完整性约束的添加、删除方法。 (4)掌握通用默认值的创建、实施与删除方法。 (5)掌握规则的创建、实施与删除方法。 (6)掌握级联删除、级联修改方法。 二、实验内容 1、完整性约束的添加、删除 (1)通过SQL Server Management Studio实施约束 a.为表Student的Birth字段创建检查约束,使输入的生日日期小于系统日期。 ①、选择Student表,右击→设计,打开Student表 ②、选择Birth一行,右击→CHECK约束,打开界面如下图所示 ③、单击“添加” ④、在表达式中写入:Entrance_date

b.为表Student的Sdept字段,设置默认值约束,默认值取’计算机系’。选择Sdept一行,在其列属性中修改其默认值 c.为Student表的Sname字段添加唯一性约束。 选择Sname一行,右击→索引/键 出现如下界面:

单击“添加”,在类型中选择“唯一键”,在列中选择“Sname”,名称自定义 最后单击“关闭”退出

d.将SC表的Sno,cno字段设置外键约束,约束名自已取,并允许级联删除与级联更新。(此要求在SQL Server2008R2中无法做出)若已存在外键约束,请先删除。 ①、选中Sno,右击→单击“关系”,出现如下信息,可见已存在外键约束 选中键,点击删除,完成约束删除 ②、添加约束: 选中Sno,右击,选择“关系”,出现如下信息,

实验4 数据的完整性

实验3-4 数据的完整性 一、实验目的: 1. CHECK约束。 2. PRIMARY KEY 约束。 3. UNIQUE约束。 4. FOREIGN KEY 约束 5. DEFAULT约束 6. 数据库关系图的使用。 二、实验内容: 1. 创建使用CHECK约束的表 2. 为表添加PRIMARY KEY 约束、UNIQUE约束、DEFAULT约 束。 3. 创建数据库关系图,建立PRIMARY KEY 约束、FOREIGN KEY 约束。 三、实验步骤: 分别使用SQL Server Management Studio和Transact SQL两种方式完成下列操作: 1. 创建员工表,要求如下: 身份编号,char(10) NOT NULL:第一位必须是英文字 母、第二位必须是数字1或2、后八位则必须是介于0~9 的数字。 工作编号,char(6) NOT NULL:以字符串T1C开头,后三 位则必须是介于0~9的数字。 姓名nvarchar(20) NOT NULL: 性别,char(1) NOT NULL,必须是字母M或F。 出生日期 NOT NULL,必须年满18岁。 电话号码,满足下列格式之一: 区号可以是3位或4位,用括号括起来。 区号是4位,电话号码必须是6位,且前3位与后3位 以“-”隔开。 区号是3位,电话号码必须是7位或8位;7位则前3位 与后4位以“-”隔开,如(025)452-8789;8位则前8 位与后4位以“-”隔开,(010)6435-8789。 地址nvarchar(60) NOT NULL

血型 varchar (3) NOT NULL ,必须是A 、B 、AB 、O 、RH+、RH-之一 起薪 money NOT NULL , 1500~10 000目前薪水money NOT NULL ,1500~20 000目前薪水大于或等于起薪。 2.创建员工表字段名数据类型说明员工编号 int 主键,聚集索引,not null ,自动增长,种子10,步长10身份证编号char(18)not null ,唯一约束技能鉴定编号char(6)not null ,唯一约束姓名nvarchar(16)姓名+电话号码,唯一约束 姓名+移动电话,唯一约束 电话号码char(11)移动电话int 3. 创建三个表: 学生表 字段名数据类型说明学号char(6)主键姓名varchar(20) 性别bit 出生日期smalldatetime 大于18岁籍贯 nvarchar(60) 课程表 字段名 数据类型说明课程编号 char(4) 主键

实验六 数据完整性

实验六数据完整性 学号:6103114095 姓名:王祥真班级:计科143 1.实验目的 (1)掌握SQL Server管理平台和Transact-SQL语句(CREATE RULE、DROP RULE)创建和删除规则的方法。 (2)掌握系统存储过程sp_bindrule、sp_unbindrule绑定和解除绑定规则的操作方法,以及sp_helptext查询规则信息、sp_rename更名规则的方法。 (3)掌握SQL Server管理平台和Transact-SQL语句(CREATE DEFAULT、DROP DEFAULT)创建和删除默认对象的方法。 (4)掌握系统存储过程sp_bindefault、sp_unbindefault绑定和解除绑定默认对象的操作方法,以及sp_helptext查询默认对象信息。 (5)掌握SQL Server管理平台和Transact-SQL语句(CREATE TABLE、ALTER TABLE)定义和删除约束的方法,并了解约束的类型。 2.实验内容 (1)为xskc数据库中student表的创建一个规则stu_nj_rule,限制“年级”列所输入的数据为2位0~9的数字。 (2)创建一个规则stusex_rule,将其绑定到student_info表的“性别”列上,保证输入的性别值只能是“男”或“女”。 (3)使用系统存储过程sp_help查询stusex_rule规则列表,使用sp_helptext查询stusex_rule 规则的文本,使用sp_rename将stusex_rule规则更名为stu_s_rule。 删除stu_nj_rule规则。

数据完整性实验

实验五:数据完整性实验 一、实验目的: 掌握使用SQL中的PRIMARY KEY、CHECK、FOREIGN KEY……REFERENCES、NOT NULL、UNIQUE等关键字是现实体完整性、参照完整性及用户定义完整性约束定义。二、实验步骤: (一)验证分析部分 1、利用SQL查询分析器用PRIMARY KEY子句保证实体完整性。 在查询分析器窗体下键入如下命令: CREATE TABLE Student( sno CHAR(5)NOT NULL UNIQUE, sname CHAR(8), ssex CHAR(1), sage INT, sdept CHAR(20), CONSTRAINT PK_Student PRIMARY KEY(sno)); UPDATE Student SET sno=’‘WHERE sdept=’CS’; UPDATE Student SET sno=’200215121‘WHERE sname=’王敏’; 运行并观察结果。 2、利用SQL查询分析器用FOREIGN KEY……REFERENCES子句保证实体完整性。 在查询分析器窗体下键入如下命令: (1)先删除原来SC表中关于Sno的外键,再将SC的Sno外键修改为: alter TABLE SC add CONSTRAINT FK_Sno FOREIGN KEY(sno) REFERENCES Student(sno) ON update CASCADE; 然后执行以下语句 Update Student SET sno=’200215128‘WHERE sno=’200215121’; (2)先删除原来SC表中关于Sno的外键,再将SC的Sno外键修改为: alter TABLE SC add CONSTRAINT FK_Sno FOREIGN KEY(sno) REFERENCES Student(sno) ON delete CASCADE; 然后执行以下语句 delete from student WHERE sno=’200215122’;

实验三 数据库完整性

实验三数据库完整性 1、实体完整性:定义表的主码。 关系模型的实体完整性在CREA TE TABLE 中用PRIMARY KEY定义。定义主码的方法分为列级约束条件和表级约束条件。 【1-1】定义表STUDENT,将其中的SNO属性定义为主码 【1-2】定义表SC,将其中的SNO、CNO定义为主码 2、参照完整性:定义表的外码 关系模型的参照完整性是在CREA TE TABLE中用FOREIGN KEY语句来定义,并用REFERENCES来指明外码参照的是哪些表的主码。 【2-1】定义表SC,其中SNO参照STUDENT的主码SNO,CNO参照表COURSE的主码 CNO 3、用户定义完整性 【3-1】列值非空。在定义SC表时,SNO、CNO和GRADE属性都不允许取空值。在不特别声明的情况下,非码属性的值允许取空值的 【3-2】列值唯一。建立部门表DEPT,要求部门名称Dname取值唯一,部门编号Deptno属性为主码 【3-3】CHECK短语指定列值应该满足的条件。定义表Student,属性Ssex的值只允许取“男”或“女”;定义表SC,属性Grade的值定义在0~100之间 【3-4】用户定义的元组上的约束条件。定义表Student,要求当学生性别为“男”时,其名字不能以Ms.打头 4、CONSTRAINT完整性约束子句:在定义表时利用约束命名子句对完整性约束条件命名, 能够灵活的增加或删除一个完整性约束条件 【4-1】定义表Student,要求学号在90000~99999之间,姓名不能取空值,年龄小于30,性别只能“男”或“女”,要求全部用约束命名子句实现 【4-2】修改表Student中的完整性限制,去掉对性别的限制,并将年龄的限制由小于30改为小于40 5、触发器 【5-1】定义表TAB,并在其上定义触发器TRI,在对TAB的插入或更新前检查,如果插入或更新的值在100~1000之间的话,将值置为50;如果值大于1000的话,则将新值插入表。【5-2】检测、执行、结果 【5-3】删除触发器TRI

实验八 数据完整性和安全性

苏州科技学院数理学院 实验报告 课程名称数据库原理与应用A 班级信计1412 学号0姓名0实验地点逸夫楼236 实验日期5、25 实验学时2学时实验名称实验八数据完整性和安全性 实验类型□√验证性 综合性 设计性 实验目的: 数据完整性方面: ●掌握域完整性的实现方法。 ●掌握实体完整性的实现方法。 ●掌握参照完整性的方法。 数据库安全性方面: ●掌握SQL Server身份验证模式。 ●掌握创建登录账户、数据库用户的方法。 ●掌握使用角色实现数据库安全性的方法。 ●掌握权限的分配。 实验内容: 数据完整性方面: 数据库的完整性设置。 数据库的安全性方面: 1、设置身份验证模式:Windows身份验证模式和混合模验证模式。 2、设置登录账户 3、设置数据库用户 4、设置数据库角色。 5、设置管理对象的权限

实验内容及步骤(记录实验的过程): 案例学习 3.1 数据完整性管理 ●可视化界面的操作方法: 实体完整性 1.将student表的“sno”字段设为主键:在表设计界面中,单击左边的行选定块,选定“sno”字段,单击工具按钮设置主键。如图1所示: 图1 1.将“sc”表的“sno”和“cno”设置为主键:在表设计界面中,单击并按住Ctrl键拖动左边的行选定块,选定sno和cno字段,单击工具按钮设置主键。如图2 所示:

图2 域完整性 3. 将“ssex”字段设置为只能取“男”,“女”两值:在表设计界面,点击鼠标右键——CHECK 约束,——添加约束,添加CK_student_sex名称,然后在约束表达式框中输入“ssex in ('男','女') ”。如图3所示。 图3 参照完整性 4. 将“student”表和“sc”表中的“sno”字段设为参照: 打开“sc”表的设计界面, 点击工

实验五 数据完整性

实验六数据完整性 1.实验目的 (1)掌握SQL Server管理平台和Transact-SQL语句(CREATE RULE、DROP RULE)创建和删除规则的方法。 (2)掌握系统存储过程sp_bindrule、sp_unbindrule绑定和解除绑定规则的操作方法,以及sp_helptext查询规则信息、sp_rename更名规则的方法。 (3)掌握SQL Server管理平台和Transact-SQL语句(CREATE DEFAULT、DROP DEFAULT)创建和删除默认对象的方法。 (4)掌握系统存储过程sp_bindefault、sp_unbindefault绑定和解除绑定默认对象的操作方法,以及sp_helptext查询默认对象信息。 (5)掌握SQL Server管理平台和Transact-SQL语句(CREATE TABLE、ALTER TABLE)定义和删除约束的方法,并了解约束的类型。 2.实验内容 (1)为xskc数据库中student表的创建一个规则stu_nj_rule,限制“年级”列所输入的数据为2位0~9的数字。 (2)创建一个规则stusex_rule,将其绑定到student_info表的“性别”列上,保证输入的性别值只能是“男”或“女”。 (3)使用系统存储过程sp_help查询stusex_rule规则列表,使用sp_helptext查询stusex_rule 规则的文本,使用sp_rename将stusex_rule规则更名为stu_s_rule。 删除stu_nj_rule规则。 (因为stu_s_rule是已存在的,所有这里改成stu_ss_rule)

数据库原理数据的完整性实验报告.

***大学计算机科学与信息学院软件工程系上机实验报告 《数据库原理》实验报告 题目实验8 数据的 完整性姓名***班级***日期*** 实验环境:SQL Server 2000 一、实验目的 熟悉通过SQL对数据进行完整性控制,通过实验加深对数据完整性的理解。 相关知识 触发器是实施复杂完整性的一种机制。触发器不需要专门的语句调用,当对它所保护数据进行修改时由DBMS自动激活,以防止对数据进行不正确,未授权或不一致的修改。 创建触发器的语法为: CREATE TRIGGER < 触发器> ON <表名> [WITH ENCRYPTION] FOR {[DELETE][,][INSERT][,][UPDATE]} [WITH APPEND] [NOT FOR REPLICATION] AS 其中: 1)WITH ENCRYPTION 为加密选项。 2)DELETE 选项为创建DELETE 触发器。DELETE触发器的作用是当对表执行DELETE操作时触发器被激 活,并从指定表中删除元组,同时将删除的元组放入一个特殊的逻辑表(delete表)中。触发器的动作可以检查delete表中的数据,以确定下一步该如何处理。 3)INSERT选项为创建INSERT触发器。INSERT触发器在对指定表中执行插入数据操作时激活,激活后 将插入表中的数据拷贝并送入一个特殊的逻辑表(inserted 表)中,触发器会根据INSERT表中的值决定如何处理。

4)UPDATE选项为创建UPDATE触发器。UPDATE触发器仅在对指定表中进行更新数据操作时激活。UPDATE 触发器激活后把将要被更新的原数据移入delete表中,再将要被更新后的新数据的备份送入inserted表中,UPDATE触发器对delete和inserted表进行检查,并决定如何处理。 5)NOT FOR REPLICATION 选项说明当一个复制过程在修改一个触发器表时,与该表相关联的触发器不 能被执行。 一个触发器只适用于一个表,每个表最多只能有三个触发器,它们分别是INSERT、UPDATE和DELETE 触发器。触发器仅在实施数据完整性和处理业务规则时使用。 二、实验内容 本实验的内容为使用SQL对数据进行完整性控制(关系数据库的三类完整性、CHECK短语、CONSTRAINT 子句、触发器)。用实验证实,当操作违反了完整性约束条件时,系统如何处理的。认真完成以下题目,按要求填写实验报告,记录所有实验用例。 (1)打开SQL Server 2000的查询分析器,用DDL语句建立如下三个表。 表student1: 字段名类型长度含义约束 Sno Char 10 学号主码(约束名:STU_PK) Sname Char 20 姓名非空(约束名:STU_U1) Ssex Char 2 性别‘男’或’女’ (约束名:STU_C1) Sage Int 年龄18 到 30(约束名:STU_C2) Sdept Char 10 所在系 表course1: 字段名类型长度含义约束 Cno Char 10 课程号主码(约束名:COU_PK) Cname Char 20 课程名唯一(约束名:COU_C1) Cpno Char 2 先行课 Ccredit Int 学分 表SC1: 字段名类型长度含义约束 Sno Char 10 学号主码(约束名:SC_PK) 外码(参照student1的Sno,约束名:

实验室数据完整性考试试卷

“实验室数据完整性”培训考试试卷 (SMP-ZK-005-00检验记录与检验报告管理规程、SMP-ZK-001-00检验工作管理规程) 姓名:岗位:分数: 一、填空题(每空2分,共70分) 1、数据完整性是指数据的和,用于描述存储的所有数据值均处于的状态。 2、在实验的同时记录及结果,不应事后抄到记录上,不得用、圆珠笔记录,应用黑色签字笔记录;记录要、、、无缺页损角,字迹,色调一致;要采用计量单位,数据应按测量仪器的记录,发现观测失误应注明;记录填写的任何更改都应当遵循以下原则:在错误的地方画一条横线并使原有信息仍,书写正确信息后签注和。 3、如检验设备具备打印的功能,应当尽可能采用检验设备的记录、和曲线图等。自动打印的记录、图谱和曲线图上应标明产品或样品的、和记录设备的信息,操作人还应签注和日期。设备的信息至少包括设备的名称及其唯一的以便追溯所用设备。 3、检验所有的必须保存。原则上不得使用,如果不可避免,可复印并在复印件上签注姓名和日期。 4、对于某些数据如环境监测数据、制药用水的,宜对数据进行并保存趋势分析报告以便了解体系的整体状况。 5、检验应当有,规定所用方法、仪器和设备,其内容应当与经 的检验方法一致。 6、检验应当有的记录并应当,确保结果与记录一致。所有计算均应当严格核对。 7、应当对实验室容量分析用、试剂、试液、对照品以及进行 。 8、质量控制实验室应当建立的操作规程。任何检验结果超标都必须按照操作规程进行,并有相应的记录。 9、产品检验记录的贮存期限为;特殊药品检验记录保存至贮存有效期后。原辅料、包装材料检验记录应贮存到产品有效期后一年。

二、简答题(每题15分,共30分) 1、检验记录应当包括哪些内容?答: 2、检验原始记录如何管理? 答:

实验四 数据的完整性、安全性

实验四数据的完整性、安全性 一、实验目的 1.掌握数据安全性和完整性的概念,以及如何保证数据库中数据安全及完整性。 2.掌握SQL Server中有关用户、角色及操作权限的管理方法. 3.学会创建和使用规则、缺省。 二、实验内容 1数据库的安全性实验,通过SSMS设置SQL Server的安全认证模式.实现对SQL Server 的用户和角色管理,设置和管理数据操作权限. 2数据库的完整性实验。使用Transact-SQL设计规则、缺省、约束和触发器。 三、实验要求 1.数据的完整性实验 ⑴用SQL语句创建一学生成绩数据库(XSCJ),包括学生(XSQK)、课程(KC)和成绩表(XS_KC): 学生情况表(XSQK) 列名数据类型长度是否允许为空值 学号Char6N 姓名Char8N 性别Bit1N 出生日期smalldatetime2 专业名Char10 所在系Char10 联系电话char11Y create database学生成绩数据库 create table学生情况表 ( 学号Char(6)not null, 姓名Char(8)not null, 性别Bit not null, 出生日期smalldatetime, 专业名Char(10), 所在系Char(10), 联系电话Char(11)null )

课程表(KC) 列名数据类型长度是否允许为空值 课程号Char3N 课程名Char20N 教师Char10 开课学期Tinyint1 学时Tinyint1 学分Tinyint1N create table课程表 ( 课程号Char(3)not null, 课程名Char(20)not null, 教师Char(10), 开课学期Tinyint, 学时Tinyint, 学分Tinyint not null, ) 成绩表(XS_KC) 列名数据类型长度是否允许为空值 学号Char6N 课程号成绩Char Smallint 3 2 N create table成绩表 ( 学号Char(6)not null, 课程号Char(3)not null, 成绩Smallint, ) ⑵数据的实体完整性实验 1用SSMS分别将学生情况表(XSQK)的学号字段、课程表(KC)的课程号字段设置为主健

实验七数据完整性实验

实验七:数据完整性实验 实验目的: 加深对数据完整性的理解。 实验内容: 数据库的完整性设置。 实验步骤: 可视化界面的操作方法: 一、实体完整性 1.将student表的“sno”字段设为主键:在表设计界面中,单击左边的行选定块,选定“sno”字段,单击工具按钮设置主键。如图1所示: 图1 1.将“sc”表的“sno”和“cno”设置为主键:在表设计界面中,单击并按住Ctrl键拖动左边的行选定块,选定sno和cno字段,单击工具按钮设置主键。如图2所示:

图2 二、域完整性 3. 将“ssex”字段设置为只能取“男”,“女”两值:在表设计界面,点击鼠标右键——CHECK约束,——添加约束,添加CK_student_sex名称,然后在约束表达式框中输入“ssex in ('男','女') ”。如图3所示。

图3 三、参照完整性 4. 将“student”表和“sc”表中的“sno”字段设为参照: 打开“sc”表的设计界面, 点击工具栏按钮 , 在弹出的属性(properties)对话框中点击“新建”按钮,在“主键表(Primary key table)”下拉框中选择“student”表,在其下的字段选择框中选择“sno”,在“外键表(Foreign key table)”下拉框中选择“sc”表,在其下的字段选择框中选择“sno”,单击关闭即可。见图4。

图4 命令方式操作方法: 一、实体完整性 1.将“student”表的“sno”字段设为主键: 当“student”表已存在则执行: 当“student”表不存在则执行:

注:可用命令“drop table student”删除“student”表 2. 添加一身份证号字段,设置其惟一性.(注: 操作前应删除表中的所有记录) 3. 将“sc”表的“sno”和“cno”设置为主键: 当“sc”表已存在则执行: 当“sc”表不存在则执行: 二、域完整性 4. 将“ssex”字段设置为只能取“男”,“女”两值: 当“student”表已存在则执行: 当“student”表不存在则执行:

实验六 实现数据完整性

实验六实现数据完整性 班级:__________ 姓名:________ 学号:____________ 专业:___________ 一、实验目的 1)实现数据完整性的概念及实施数据完整性的重要性。 2)掌握数据完整性的分类。 3)掌握完整性约束的添加、删除方法。 4)掌握通用默认值的创建、实施与删除方法。 5)掌握规则的创建、实施与删除方法。 6)掌握级联删除、级联修改方法。 二、实验内容 说明:在所有库文件名与表名取名时,请各位同学在所给定的文件名后加上下划线及学号后四位数字构成自己的实验数据库名与表名。如:XSGL1_20051101或XSGL1_1101. 数据完整性是指数据的正确性、完备性和一致性,是衡量数据库质量好坏的重要标准。数据完整性分为以下3类: 域完整性:是指一个列的输入有效性,如是否允许为空值等。通常由Check约束来实现。 实体完整性:是指保证表中所有的行惟一。由主键约束来实现。 参照完整性:也叫引用完整性。参照完整性总是保证主关键字(被引用表)和外部关键字(引用表)之间的参照关系。它涉及两个或两个以上表数据的一致性维护。由外键约束来实现。 1、完整性约束的添加、删除 约束是强制数据完整性的首选方法。约束有6种类型:非空约束、默认值约束、Check 约束、主键约束、外键约束、唯一性约束。 (1)使用企业管理器实施约束 1>为表student的birth字段创建检查约束,使输入的生日日期小于系统日期。 添加检查约束操作步骤: 删除该检查约束操作步骤: 2>为表student的Sdept字段即所在系字段,设置默认值约束,默认值取’CS’。 添加默认约束的操作步骤: 删除默认约束的操作步骤: 3>(若原有约束,请在企业管理器中删除student表的主键约束)在企业管理器中将sno重设为主键。(会操作即可,操作步骤可略) 4>为student表的sname字段添加唯一性约束。 添加唯一性约束操作步骤: 删除唯一性约束操作步骤: 5>(若原有约束,请在企业管理器中删除原有的外键约束)在企业管理器中删除SC原有的外键约束,在企业管理器中对sno,cno字段设置外键约束,约束名自已取。并允许级联删除与

实验室数据完整性

验室数据完整性 CFDA飞检通告中药企缺陷汇总 几年对于制药企业人都不陌生的一个名称就是数据完整性,然而它不是现在才有的,只是曾经GMP检查的一个盲区。 验室由于其涉及的数据信息量大,首当其冲成为数据完整性的重灾区。 国家局发布的飞行检查数据显示自2015年12月1日计算机化系统生效以来,12家问题企业涉及实验室数据完整性缺陷的有6家,占总数的50%,而自2016年发布的5家问题企业有4家涉及。涉及实验室数据完整性缺陷内容主要有以下几方面: 1)电子数据完全性不足:例如多人共用登录密码,无权限受控,缺审计追踪、修改数据、实验数据未进行备份等功能; 2)修改系统时间; 3)检验记录涉嫌造假,仪器使用日志不真实,涉嫌一图多用; 4)记录不规范不完整等。 CFDA飞行检查实验室数据完整性缺陷汇总: 一、湖南健朗药业有限责任公司 2015.12.23 验室数据完整性缺陷内容:

拉西坦成品原始检验记录中采用红外光谱仪鉴别时,选择性的采用仪器内保存的工作对照品图谱比对作为检验结果进行判定; 验用高效液相色谱仪、气相色谱仪,多人共用登录密码,无权限受控,缺审计追踪等功能,不能确保图谱、数据的完整性。 https://www.wendangku.net/doc/6318375877.html,/WS01/CL1681/139041.html 二、吉林省辉南三和制药有限公司 2015.12.28 实验室数据完整性缺陷内容: 验记录涉嫌造假,仪器使用日志不真实。在该企业液相工作站打印出的精制冠心片药粉液相色谱图,批号为20130301、20140501、20140801、20140802、20150901样品液相色谱图高度一致,涉嫌一图多用的数据完整性问题。 外企业无20150901批次物料的生产记录,物料领用记录等。而液相日志显示2015年9月14日和2015年9月26日均显示对该批号物料进行了检测,此使用日志明显存在造假。 https://www.wendangku.net/doc/6318375877.html,/WS01/CL1681/140200.html 三、海南益尔药业有限公司 2016.01.12 实验室数据完整性缺陷内容: 量控制方面存在的问题。 1、修改数据。Thermo HPLC(型号:ultimate-3000,编号A-04-07-21)数据库显示,150601批次盐酸氟哌噻吨原料药的杂质A进行了多次测定,其中2015年6月27-28日(工作站显示的进样时间)测定的样品检测结果合格,HPLC图谱被该批次检验记录采用,但检验记录中打印的图谱显示,对照溶液、供试品溶液和溶剂的测定时间均为2015年6月26日13:59。

实验6--数据完整性

实验6--数据完整性

一、实验目的 1.掌握Transact-SQL语句(CREATE RULE、DROP RULE)创建和删除规则的方法。 2.掌握系统存储过程sp_bindrule、 sp_unbindrule绑定和解除绑定规则的操作 方法,以及sp_help、sp_helptext查询规 则信息、sp_rename更名规则的方法。3.掌握Transact-SQL语句(CREATE DEFAULT、DROPDEFAULT)创建和删除默认对象的方法。4.掌握系统存储过程sp_bindefault、 sp_unbindefault绑定和解除绑定默认对象 的操作方法,以及sp_helptext查询规则信 息。 5.掌握SQL Server管理平台和Transact-SQL 语句(CREATE TABLE、ALTER TABLE)定义和 删除约束的方法,并了解约束的类型。 二、实验内容及步骤 (1)为studentsdb数据库创建一个规则,限制所输入的数据为7位0~9的数字。 ①复制student_info表命名为stu_phone,在stu_phone表中插入一列,列名为“电话号

码”。完成以下代码实现该操作。 SELECT *INTO stu_phone FROM student_info ALTER TABLE stu_phone ADD CHAR(7) NULL stu_phone表结构如图1-10所示。 图1-10 stu_phone表结构 ②创建一个规则phone_rule,限制所输入的 数据为7位0~9的数字。实现该规则的代码为 CREATE phone_rule AS @phone LIKE '[0-9][0-9][0-9][0-9][0-9][0-9][0-9]' ③使用系统存储过程sp_bindrule将 phone_rule规则绑定到stu_phone表的“电话 号码”列上。实现该操作的代码为 sp_bindrule ,'stu_phone.电话号 码' ④输入以下代码,进行一次插入操作: INSERT INTO stu_phone(学号,姓名,电话号码) VALUES('0009','王国强','1234yyy') 产生以下出错信息: 消息513,级别16,状态0,第1 行

实验五 索引和数据完整性

实验五索引和数据完整性 1、目的与要求 (1)掌握索引的使用方法。 (2)掌握数据完整性的实现方法。 2、实验准备 (1)了解索引的作用与分类。 (2)掌握索引的创建方法。 (3)理解数据完整性的概念及分类。 (4)掌握各种数据完整性的实现方法。 3、实验内容 (1)建立索引。 ①使用CREATE INDEX语句创建索引。 A、对YGGL数据库的Employees表中的DepartmentID列建立索引。 在“查询分析器”窗口中输入如下程序并执行。 B、在Employees表的Name列和Address列上建立复合索引。 C、对Department表上的DepartmentName列建立唯一非聚集索引。 【思考与练习】 A、索引创建后在对象资源管理器中查看表的索引。 上面分别创建了Employees表和Department表的索引,在对象资源管理器中的表中将相应的表打开,在“索引”中显示该表中建立的索引。详细结果如上面截图中显示。 B、了解索引的分类情况。 按索引的组织方式能够将索引分为聚集索引和非聚集索引两种类型。 聚集索引将数据行的键值在表内排序并存储对应的数据记录,使得数据表物理顺序与索引顺序一致。 非聚集索引完全独立于数据行的结构。 C、使用CREATE INDEX语句能够创建主键吗?

D、在什么情况下能够看到建立索引的好处? 数据库索引是为了增加查询速度而对表字段附加的一种标识。数据库的索引并不是只有好处或者只有坏处的。当我们的数据库足够大,恰当的建立索引就会大大的提高查询搜索的速度;在这里举个反例,像查询性别这种大量重复的字段时候,是否建立索引是没有多大区别的;还有当表内数据不是很多的时候建立索引也是没有多大意义的,因为索引也是要占用资源的。但是当我们数据库非常大时候,经常进行GROUP BY查询时候,若将GROUP BY字段上建立索引就会很大程度上面较少查询搜索所花费的时间。 ②使用界面方式创建索引。 使用界面方式在Employees表的PhoneNumber列上创建索引。 启动SQL Server Managerment Studio,在对象资源管理器中展开数据库YGGL,展开表Employees,右击“索引”,选择“新建索引”选项。在新建索引的窗口中填写索引的名称和类型,单击“添加”按钮,在列框中选择要创建索引的列,选择完单击“确定”按钮即完成创建的工作。 【思考与练习】 A、使用界面方式创建一个复合索引。

数据库实验6 数据完整性(答案)

实验6 数据完整性 学号:18103317 专业:电子信息工程 一、实验内容和步骤 1.为studentsdb数据库创建一个规则,限制所输入的数据为7位0~9的数字。 (1)复制学生表命名为stu_phone,在stu_phone表中插入一列,列名为“电话号码”。完成以下代码实现该操作。 SELECT * INTO stu_phone FROM 学生表 ALTER TABLE stu_phone ADD CHAR(7)NULL stu_phone表结构如图1-10所示。 图1-10 stu_phone表结构 (2)创建一个规则phone_rule,限制所输入的数据为7位0~9的数字。 Create rule phone_rule As @value like '[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]' (3)使用系统存储过程sp_hndrule将phone_rule规则绑定到stu_phone表的“电话号码”列上。 sp_bindrule phone_rule, 'stu_phone.电话号码' (4)插入操作输入以下数据: 学号姓名电话号码

0009 王国强1234yyy 是否可以成果插入?如果出现错误,请列出错误信息,为什么会产生该出错信息?如果要实现插入操作,应修改INSERT INTO语句中的哪个值?phone_rule规则能否对其他操作(如DELETE)进行规则检查? 消息213,级别16,状态1,第1 行 插入错误: 列名或所提供值的数目与表定义不匹配。 2.创建一个规则stusex_rule,将其绑定到stu_phone表的“性别”列上,保证输入的性别值只能是“男”或“女”。 CREATE RULE stusex_rule AS @性别in ('男','女') 3.使用系统存储过程sp_help查询stusex_rule规则列表,使用sp_helptext 查询stusex_rule规则的文本,使用sp_rename将stusex_rule规则更名为 stu_s_rule。 4.删除stu_s_rule规则。 注意:stu_s_ rule为stusex_ rule更名后规则名,是否仍然绑定在stu_phone表的“性别”列上,应如何操作才能删除它。 5.在studentdb数据库中,建立日期、货币和字符等数据类型的默认对象。 (1)创建默认对象df_date、df_char、df_money。 ●创建日期型默认对象df_date,默认日期为2006-4-12。 CREATE DEFAULT df_date AS '2006-4-12' ●创建字符型默认对象df_char,默认字符为“unknown” CREATE DEFAULT df_char AS 'unknown' ●创建货币型默认对象df_money,默认为100元 CREATE DEFAULT df_money

相关文档