第6章 数据库表数据完整性应用实践
- 格式:ppt
- 大小:2.86 MB
- 文档页数:42
数据的完整性实验报告摘要:数据在当今信息时代中扮演着重要的角色。
数据的完整性是数据质量的一个重要方面,它涉及数据的准确性和完整性。
本实验报告旨在通过实验评估不同数据完整性技术的效果,并提供对数据完整性的讨论和分析。
引言:在现代社会中,数据的运用范围越来越广泛,涉及到各行各业。
然而,随着数据量的迅速增长,数据完整性问题也日益凸显。
数据完整性是指数据的准确性和完整性,即数据应当准确反映所要代表的事物,并包含所有必要的信息。
数据完整性对于任何组织或个人来说都是至关重要的,特别是在数据分析、决策制定和信息处理过程中。
方法:为了评估不同数据完整性技术的效果,我们使用了一个具体的实例,即一个销售数据集。
该数据集包含了各种关于销售订单的信息,包括订单号、产品编号、客户信息、销售日期等。
我们选择了以下几种数据完整性技术进行实验:校验和、冗余数据、数据验证规则和错误检测。
首先,我们使用校验和技术来确保数据的完整性。
校验和是一种简单而有效的技术,通过对数据进行加和计算,然后与事先计算好的校验和进行比较来检测数据是否完整。
我们计算了销售订单数据集的校验和,并与预期值进行了比较。
通过比较,我们可以确定是否存在数据完整性问题。
其次,我们使用了冗余数据技术来确保数据的完整性。
冗余数据是指在不同的数据集中存储相同的数据。
通过在销售订单数据集中引入冗余数据,并对比原始数据和冗余数据的差异来检测数据的完整性。
接下来,我们使用了数据验证规则技术来确保数据的完整性。
数据验证规则是指通过定义一组规则,来验证数据是否满足规定的条件。
我们在销售订单数据集中定义了一组数据验证规则,包括产品编号的有效性、客户信息的完整性等。
通过应用这些规则来检验数据的完整性。
最后,我们使用错误检测技术来确保数据的完整性。
错误检测技术是指通过对数据进行扫描和检测,来发现数据中的错误或异常。
我们扫描了销售订单数据集中的所有字段,并检测了可能存在的错误或异常情况。
数据库原理及应用数据库完整性在当今数字化的时代,数据库成为了各类组织和系统存储、管理和处理数据的核心工具。
而数据库完整性则是确保数据库中数据的准确性、一致性和可靠性的关键因素。
理解数据库完整性的原理及应用,对于有效管理和利用数据库资源至关重要。
数据库完整性指的是数据库中的数据在逻辑上的正确性和合理性。
它涵盖了多个方面,包括实体完整性、域完整性、参照完整性和用户自定义完整性。
实体完整性确保表中的每一行都能唯一地标识一个实体。
例如,在一个学生信息表中,学号通常被设定为主键,不能有重复的值,这样就能保证每个学生在表中都有唯一的标识。
如果出现了学号重复的情况,就违反了实体完整性规则,可能导致数据的混乱和错误。
域完整性则关注的是列数据的有效性。
比如,学生成绩的列中,成绩的值应该在 0 到 100 之间。
如果出现了超出这个范围的值,比如-5 或者 150,就违反了域完整性规则。
这就好像给一个变量设定了一个合理的取值范围,超出这个范围就是不合理的。
参照完整性在多个相关表之间起着重要的作用。
假设有一个“学生选课表”和一个“课程表”,“学生选课表”中的课程编号应该在“课程表”中存在对应的值。
如果在“学生选课表”中出现了一个不存在于“课程表”中的课程编号,那就违反了参照完整性。
这就好比是一个链条,每个环节都要相互衔接,不能出现脱节的情况。
用户自定义完整性则允许根据特定的业务规则来定义数据的约束条件。
比如,在一个订单表中,可以规定订单金额不能为负数,这就是根据业务需求自定义的完整性规则。
为了实现数据库完整性,数据库管理系统提供了多种机制。
约束是其中最常见的一种。
主键约束、唯一约束、检查约束、外键约束等都能有效地保证数据的完整性。
主键约束用于确保主键列的值唯一且不为空。
它就像是一个数据的“身份证号”,独一无二且必不可少。
唯一约束则保证了指定列的值不能重复,但可以为空。
检查约束可以定义一个条件,使得列中的值必须满足该条件。
数据库的完整性实验报告数据库的完整性实验报告引言:数据库的完整性是指数据库中存储的数据必须满足预定的一致性要求,包括实体完整性、域完整性、参照完整性和用户定义的完整性。
本实验旨在通过设计一个简单的数据库,并通过实际操作验证其完整性。
一、实验目的本实验的目的是通过设计和操作数据库,了解数据库的完整性概念,并掌握如何保证数据的完整性。
二、实验环境本实验使用MySQL数据库管理系统,并在Windows操作系统上进行实验。
三、实验步骤1. 创建数据库首先,我们需要创建一个数据库来存储我们的数据。
在MySQL中,可以使用以下命令创建一个新的数据库:```CREATE DATABASE integrity;```2. 创建数据表接下来,我们需要创建一个数据表来存储我们的数据。
假设我们要创建一个学生信息表,包括学生的学号、姓名和年龄。
可以使用以下命令创建该表:```USE integrity;CREATE TABLE students (id INT PRIMARY KEY,name VARCHAR(50),age INT);```3. 插入数据现在,我们可以向刚刚创建的数据表中插入一些数据。
例如,我们可以插入几个学生的信息:```INSERT INTO students (id, name, age) VALUES (1, '张三', 20);INSERT INTO students (id, name, age) VALUES (2, '李四', 22);INSERT INTO students (id, name, age) VALUES (3, '王五', 21);```4. 实体完整性实体完整性是指每个实体都必须具有一个唯一的标识符。
在我们的学生信息表中,学生的学号是唯一的标识符。
为了保证实体完整性,我们可以在创建表时使用PRIMARY KEY约束来定义学号为主键:```CREATE TABLE students (id INT PRIMARY KEY,name VARCHAR(50),age INT);```这样,如果有重复的学号插入到表中,系统会报错并拒绝插入。
一、实习背景随着信息化时代的到来,数据已经成为企业、政府和社会各界的重要资产。
数据完整性作为数据质量的核心要素,直接关系到数据分析、决策制定和业务运营的准确性。
为了提高自身在数据管理领域的专业能力,我于2021年7月至2021年9月期间在XX科技有限公司进行了为期三个月的数据完整性实习。
二、实习单位及部门实习单位:XX科技有限公司实习部门:数据管理部三、实习目的1. 理解数据完整性的概念和重要性;2. 掌握数据完整性检查的方法和工具;3. 学习数据完整性管理流程;4. 提高在实际工作中处理数据问题的能力。
四、实习内容1. 数据完整性理论学习在实习初期,我主要学习了数据完整性的相关理论知识,包括数据完整性的定义、分类、检查方法和维护策略等。
通过学习,我深刻认识到数据完整性对于企业运营的重要性,以及数据完整性问题可能带来的风险。
2. 数据完整性检查实践在数据管理部,我参与了多个数据完整性检查项目。
具体内容包括:(1)数据一致性检查:通过编写SQL脚本,对数据库中的数据进行一致性检查,确保数据在各个表中保持一致。
(2)数据准确性检查:对关键业务数据进行准确性检查,例如销售数据、库存数据等,确保数据的准确性。
(3)数据完整性评估:对现有数据完整性进行评估,分析数据完整性的现状和存在的问题。
3. 数据完整性维护与优化在实习过程中,我参与了数据完整性维护与优化工作,具体内容包括:(1)建立数据完整性监控机制:通过编写脚本,对关键数据指标进行实时监控,及时发现数据完整性问题。
(2)优化数据完整性检查流程:针对现有数据完整性检查流程,提出优化建议,提高检查效率和准确性。
(3)数据完整性培训:为部门同事提供数据完整性相关培训,提高团队的数据完整性意识。
4. 数据完整性案例分享在实习期间,我收集并整理了多个数据完整性案例,包括数据不一致、数据缺失、数据错误等问题,并与部门同事分享,共同探讨解决方案。
五、实习成果1. 理论知识方面:通过实习,我对数据完整性的概念、方法和维护策略有了更深入的了解,为今后从事数据管理工作奠定了基础。
云南大学软件学院实验报告课程:数据库原理与实用技术实验任课教师:刘宇、张璇姓名:学号:专业:信息安全成绩:实验6 数据库完整性实验6-1 完整性约束1、创建规则(用图形或者语句方法创建)(1)创建入学日期规则“Enter_University_date_rule”,假定该学校于1923年4月30日创建。
要求:入学日期必须大于等于学校创建日期,并且小于等于当前日期测试:(2)创建学生年龄规则“Age_rule”。
要求:学生年龄必须在15~30岁之间测试:(3)创建学生性别规则“Sex_rule”。
要求:性别只能为“男”或“女”测试:《数据库原理与实用技术》实验3 / 21(4)创建学生成绩规则“Score_rule ”。
要求:学生成绩只能在0~100之间(5)用图形方法查看学生成绩规则“Score_rule ”,截图为:双击:成绩:(6)用语句方法查看学生成绩规则“Score_rule ”,语句为:2、删除规则Enter_University_date_rule3、创建默认(用图形或者语句方法创建)(1)创建默认时间“Time_default”为当前系统时间(2)创建默认入学年龄“Age_default”为18岁(3)用图形方法查看默认入学年龄“Age_default”,截图为:《数据库原理与实用技术》实验5 /21(4)用语句方法查看默认入学年龄“Age_default ”,语句为:4、删除默认入学年龄“Age_default ”5、创建声明式默认:在创建表的过程中创建声明式默认 (1)创建表“default_example ”,表中包含字段pid 、name 、sex 、age 。
要求设定sex 的默认值为“男”、age 的默认值为18。
编号 姓名 性别 年龄 101 苏晴 女 201马拯山20执行结果为:输入数据:获取数据结果为:(2)在表中增加新的默认,将编号默认为100。
插入一条记录,执行结果为:6、在“学生管理数据库”各个数据表中建立相应的主键、外键、惟一值、以及check约束,要求:学生的年龄必须是两位数,其中第一位是1或2:学生表如下:《数据库原理与实用技术》实验授课表如下课程表如下:7/ 21成绩表如下:删除check 约束:学生表的:《数据库原理与实用技术》实验9/21授课表的:课程表的:成绩表的:7、完成教科书456页如下习题:[7.1]a:实验6-2 触发器《数据库原理与实用技术》实验11 / 211、使用触发器(1)创建一个触发器trig_update ,返回对“学生表”进行更新操作后,被更新的记录条数(2)执行触发器(3)修改触发器trig_update ,除返回被更新的记录条数外,再返回学生的所有基本信息2、使用触发器的两个特殊表:插入表(inserted)和删除表(deleted)。
实验六数据完整性约束姓名:学号:专业:网络工程班级:20网络工程同组人:无实验日期:2022.5【实验目的与要求】1.熟练掌握实体完整性的实现。
2.熟练掌握参照完整性的实现。
3.熟练掌握域完整性的实现。
【实验内容与步骤】实验准备:(1)对于SalesDB数据库,若在产品表、销售表和客户表上已有约束,请先删除之;(2)删除掉表中重复的行。
6.1.实体完整性的实现(1) 对产品表,定义主键约束(用企业管理器实现)。
写出相应过程:(1)在对象资源管理器中的数据库节点下找到数据库SalesDB,找到表Product。
右击-修改(2)按住Ctrl键选中Price和Stocks,右键-设置主键-保存测试:试着对产品表插入一条与原表中数据行具有相同主键值的数据。
给出测试结果:(2)客户表(CUSTOMER),定义名为PK_Cstm的主键约束,设定客户号(Cno)为主键。
(用SQL语句实现,写出相应语句)。
给出相应的SQL语句:alter table Customeraddconstraint PK_Cstm primary key(Cno)给出测试结果:(3)对销售表,定义名为PK_Sales的主键约束,设定主键为(Pno,Cno)的组合(用SQL语句实现,写出相应语句)。
给出相应的SQL语句:alter table Salesaddconstraint PK_Sales primary key(Pno,Cno)给出测试结果:(1)利用企业管理器建立产品表(Product)与销售表(Sales)之间的参照关系,当对主表产品表进行更新和删除操作时,从表Sales采用NO ACTION方式,写出其过程。
给出相应的过程:测试:试着删除主表中与从表有关联的一条记录,而后分别查看主表和从表中数据记录,给出测试结果。
(2)利用SQL语句建立销售表(SALES)与客户表(CUSTOMER)之间的参照关系,设定外键约束名为FK_SC,使得当对主表客户表(CUSTOMER)进行更新和删除操作时,从表销售表(SALES)采用CASCADE(级联)方式处理,给出相应的SQL语句和测试结果。
实验题目四、数据库的完整性一、实验目的1、掌握使用约束实现数据完整性的方法;2、掌握使用触发器实现数据完整性的方法;二、实验内容和要求1、设置主键约束、外键约束、唯一约束、非空约束、CHECK约束等;2、使用图形用户界面创建触发器、使用SQL语言创建触发器,实现完整性控制;三、实验主要仪器设备和材料1.计算机及操作系统:PC机,Windows 2000/XP或更高版本;2.数据库管理系统:SQL Server 2005或更高版本;四、实验方法、步骤及结果测试(一)、根据实验一中的基本表,使用约束创建数据完整性。
要求:1、删除teaching中的基本表。
按实验一中的各表的定义,重新创建student表、course1)创建各基本表的先后顺序有什么影响?2)在创建各表过程中,遇到了什么问题,是如何解决的?3、通过“ALERT TABLE”语句,完成下列操作:1)为student表的sname列添加唯一约束,并命名。
2)删除course表的非空约束。
3)为sc表的score列添加约束,取值范围为[0,100]。
4)定义域title_domain,取值为{助教,讲师,副教授,教师},检查SQL Server是否3、检查student表sname列的唯一约束插入新的数据记录对新建的唯一约束进行检查,写出相应的SQL语句,并将检查的执4、检查sc表score列的CHECK约束插入不在定义范围的数据记录检查约束。
写出相应的SQL语句,并将检查执行结果截(二)、通过图形用户界面的方式创建各类约束,定义数据的完整性1、删除sc表的外键约束。
在表设计器中,单击工具栏中的“表和索引属性”按钮,打开2、删除speciality的spname字段唯一约束。
然后在表设计器中,单击工具栏中的“表和3、在表设计器中,单击工具栏中的“表和索引属性”按钮,打开“属性”对话框,在“CHECK 约束”选项中,为teacher表中的title列设置检查约束,定义取值范围为{助教、讲师、副(三)、使用触发器实现数据的完整性1、在student表中创建触发器,实现student和sc表的级联删除。
数据库实验报告三索引和数据完整性的使用第一部分:索引1. 索引的概念数据库中的索引指的是对数据表中一列或多列的值进行排序的结构。
其作用在于提高查询速度和数据检索的效率。
常见的索引包括主键索引、唯一索引、普通索引和全文索引等。
主键索引:用于标识数据表中每一行的唯一性,在创建表时可以定义一个主键,也可以在表创建后添加主键索引。
主键索引是数据库中一种建立索引的方式,也是性能最优的索引。
唯一索引:唯一索引是用来保证数据表中某一列的唯一性。
与主键索引不同,唯一索引列的值可以为空。
普通索引:普通索引只是按照指定的列进行排序,无特殊要求。
可以对任何列进行普通索引,但一个表中最多只能有一个主键索引,可同时创建多个普通索引。
全文索引:全文索引是基于全文搜索的索引,用于在大数据量的文本信息中进行高效率的搜索。
其搜索键值不是行而是文本字符串中的单词。
3. 索引的创建和删除索引的创建和删除操作,首先需要指定要操作的表和列名,然后通过 SQL 语句进行执行。
创建索引的语法:CREATE [UNIQUE] [CLUSTERED | NONCLUSTERED] INDEX {index_name} ON {table_name} ({column_name} [ASC | DESC]);删除索引的语法:DROP INDEX {index_name} ON {table_name};4. 索引的优缺点索引的优点在于提高查询速度和数据检索的效率,使得数据库操作更加高效。
同时,索引可以帮助数据表中的列保持唯一性,防止重复数据的插入。
索引的缺点在于占用大量的磁盘空间和增加了数据库操作的复杂度。
每个索引都需要独立占用一定的磁盘空间,如果数据表中的列较多,建立索引过程对磁盘的压力也较大。
第二部分:数据完整性的使用数据完整性是指数据库中的数据是准确、一致、合法和有效的。
数据完整性包括实体完整性、域完整性、参照完整性和用户自定义完整性等几个方面。
实习报告:数据完整性实习一、实习背景与目的随着大数据时代的到来,数据已经成为了企业和个人宝贵的资产。
数据完整性作为数据质量的关键指标,对于企业数据的准确性、可靠性和一致性具有重要意义。
本次实习旨在通过实际操作,深入了解数据完整性的概念、方法和应用,提高自己在数据管理和分析方面的能力。
二、实习内容与过程1. 数据完整性概念学习:通过阅读相关资料和文献,了解数据完整性的定义、分类和衡量方法。
掌握数据完整性在数据库管理、数据清洗和数据集成等方面的应用。
2. 数据库设计与实施:以某一实际项目为例,参与数据库的设计和实施过程。
在设计过程中,注重数据完整性约束的设置,如主键、外键、唯一性约束等。
在实施过程中,学习如何通过SQL语句检查数据完整性。
3. 数据清洗与转换:参与数据清洗和转换工作,学习如何识别和纠正数据完整性问题。
通过实际操作,掌握数据清洗工具的使用,如Python、Excel等。
4. 数据集成与融合:了解数据集成的重要性,学习如何处理数据源之间的差异,实现数据的融合。
掌握数据集成工具的使用,如Apache Nifi、Apache Spark等。
5. 数据完整性验证:通过编写SQL语句和Python脚本,对数据库中的数据进行完整性验证。
分析数据完整性问题产生的原因,并提出相应的解决措施。
6. 实习报告撰写:总结实习过程中的所学所得,撰写实习报告,分享实习经验和心得。
三、实习成果与反思1. 掌握数据完整性的基本概念、方法和应用,提高自己在数据管理和分析方面的理论水平。
2. 学会使用数据库设计工具和数据清洗工具,提高自己在实际项目中解决问题的能力。
3. 培养团队协作和沟通能力,提高自己在团队中的工作效率。
4. 深入反思实习过程中的不足,如时间管理、技能掌握等,为今后的实习和职业发展奠定基础。
四、实习总结通过本次实习,我对数据完整性有了更加深入的了解,掌握了数据完整性的相关方法和工具。
在实际操作中,我学会了如何检查和维护数据完整性,提高了自己在数据管理和分析方面的能力。
SQL实验六索引和数据完整性的使用索引是一种特殊的数据结构,它能够提高数据库的查询和性能。
索引可以加快数据的检索速度,减少数据库的IO操作,提高系统的响应速度。
在实际的数据库操作中,索引的使用是非常重要的,可以大大提高数据库的查询效率。
索引的使用可以分为两种情况:一种是在数据库表中创建索引,比如在一些字段上创建索引;另一种是在查询语句中使用索引,比如通过WHERE子句中的条件来使用索引。
在创建索引的时候,我们需要考虑到几个因素:索引的字段选择、索引的类型、索引的存储方式等。
索引的字段选择是非常重要的,一般来说,我们应该选择那些经常被查询的字段作为索引字段,这样可以提高查询的速度。
同时,我们还需要考虑到索引的唯一性,如果一个字段的值是唯一的,那么我们可以将其作为主键索引来使用,这样可以加快查询速度。
索引的类型有很多种,常见的有B树索引、哈希索引、全文索引等。
不同的索引类型适用于不同的场景,我们需要根据具体的需求来选择合适的索引类型。
索引的存储方式也有很多种,一般来说,索引可以存储在内存中,也可以存储在磁盘中。
如果数据量比较大,我们可以将索引存储在磁盘中,这样可以节省内存资源。
但是需要注意的是,将索引存储在磁盘中会增加IO操作的时间,降低查询速度。
在查询语句中使用索引也是非常重要的。
通过在WHERE子句中增加索引字段的条件,可以加快查询速度。
同时,我们还可以通过ORDERBY子句来对查询结果进行排序,这样可以进一步提高查询效率。
除了索引之外,数据完整性也是数据库设计中非常重要的一部分。
数据完整性保证了数据库中数据的一致性和准确性,可以防止数据的丢失和损坏。
数据完整性的实现可以通过主键约束、外键约束、唯一约束和检查约束等手段来实现。
主键约束可以保证表中每一行的数据都是唯一的,可以防止数据的重复和错误。
外键约束可以保证表与表之间的关系的有效性,可以防止数据的错误和不一致。
唯一约束可以保证一些字段的值在表中是唯一的,可以防止数据的重复和错误。
数据的完整性在数据库应用系统中的设计与实施随着信息技术的发展,数据库系统已经成为企业信息化建设的重要组成部分。
在数据库应用系统的实施过程中,数据的完整性是非常关键的一个方面,它直接关系到数据的可靠性和准确性,对于保证数据的质量和有效管理数据资源都具有重要意义。
一、数据完整性概述数据完整性是指数据在一定范围内的正确性和一致性。
在数据库中,数据完整性通常是指数据库中数据的正确性、有效性、准确性和合法性等方面的要求。
数据完整性是数据库系统中的一项非常重要的安全控制。
它可以使得数据在系统操作、用户使用、数据维护等方面得到有效的保护,确保数据被正确的使用和管理,同时保证数据在任何时候都是可用的和可靠的。
二、数据完整性在数据库设计中的应用在数据库设计中,数据完整性需要遵循以下原则:1. 定义数据模型时,需要严格定义各个数据元素的属性和关联关系,保证数据之间的正确性和有效性。
2. 在设计表结构时,需要严格遵循数据规范和约束条件,如主键、唯一键、外键等,以确保数据的有效性和一致性。
3. 设计数据项时,需要考虑各个数据项之间的关系,以确定表之间的联系和数据之间的合法性。
4. 设定合适的数据输入限制,并进行数据验证,以保证用户输入的数据合法且符合要求。
5. 为数据库设置安全防护措施,限制用户对数据的访问权限,提高数据的安全性和完整性。
三、数据完整性在数据库应用系统中的实施实际应用中,为了确保数据的完整性,需要在系统的不同层次进行保护和控制:1. 在应用程序编写时,需要加入相关的数据校验和约束,例如字段长度、输入格式、数据格式等,防止用户输入不合法数据。
2. 对于关键数据或需要保密的数据,需要加密和访问控制,设置相应的安全控制,防止恶意用户或黑客攻击。
3. 对于非法数据或不符合规范的数据,需要进行异常处理,如给出相应的提示、报错等,确保数据质量和准确性。
4. 在数据库管理方面,需要定期维护数据库、备份数据、完善安全策略等,从而确保数据的安全和完整性。
实验6 数据完整性学号:18103317专业:电子信息工程一、实验内容和步骤1.为studentsdb数据库创建一个规则,限制所输入的数据为7位0~9的数字。
(1)复制学生表命名为stu_phone,在stu_phone表中插入一列,列名为“电话号码”。
完成以下代码实现该操作。
SELECT * INTO stu_phone FROM 学生表ALTER TABLE stu_phone ADD CHAR(7)NULLstu_phone表结构如图1-10所示。
图1-10 stu_phone表结构(2)创建一个规则phone_rule,限制所输入的数据为7位0~9的数字。
Create rule phone_ruleAs @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_ruleAS @性别in ('男','女')3.使用系统存储过程sp_help查询stusex_rule规则列表,使用sp_helptext 查询stusex_rule规则的文本,使用sp_rename将stusex_rule规则更名为stu_s_rule。
2011-2012学年第二学期课程实验报告课程名称:数据库系统原理实验名称:数据库控制(二):数据完整性姓名班级学号实验台编号- 同组同学-实验课表现出勤、表现得分25% 25 实验报告得分50%实验总分操作结果得分25% 25实验目的1.掌握数据完整性的概念及分类2.掌握各种完整性的实现方法3.掌握触发器的概念及工作原理4.掌握触发器的创建和使用方法实验内容(实验步骤和实验结果的简单描述,方便同学自己以后阅读)--实验六,数据库控制(二):数据完整性--1. 用户要求:XS表中的学生的专业只能是“计算机”,“数学”,“电子”-- 中的任意一个,请问如何解决该问题?请写出一种具体的解决方法。
ALTER TABLE XS WITH NOCHECKADD CONSTRAINT C1CHECK (专业IN('计算机','数学','电子'))--2. 用户要求:XS表中的学生的年龄必须在岁到岁之间,请问如何解决-- 该问题?请写出一种具体的解决方法。
ALTER TABLE XS WITH NOCHECKADD CONSTRAINT C2CHECK (2012 -YEAR(出生日期)BETWEEN 18 AND 30)--3. 用户要求:在输入XS表中的数据时,若“专业”列没有提供数据,系统应-- 自动取值“计算机”,请问如何解决该问题?请写出一种具体的解决方法。
USE stu10EXEC sp_helpconstraint XSALTER TABLE XSDROP CONSTRAINT DF__XS__专业__023D5A04ALTER TABLE XS ADD CONSTRAINT DF_专业DEFAULT'计算机'FOR专业--4. 用户要求:XS_KC表中的成绩列的取值只能为—之间的整数,且在用户-- 没有输入数据时自动取值,请问如何解决该问题?请写出一种具体的解决-- 方法。
《数据库原理与应用》课程实验报告
学院:物光学院班级:07网工姓名:学号:
实验设备:计算机1台实验日期:年月日
实验项目名称数据库完整性
实验目的 1.掌握使用SQL语句定义与删除DEFAULT约束。
2.掌握使用SQL语句定义与删除CHECK约束。
3.掌握使用SQL语句定义与删除PRIMARY KEY约束。
4.掌握使用SQL语句定义与删除FOREIGN KEY约束。
实验要求:
1.熟悉查询分析器的操作,以及执行T-SQL语句的方法。
2.理解数据完整性的概念,熟悉约束的实现方法。
实验内容(包括步骤):
1.实施worker表的“性别”字段默认值为“男”得约束。
2.实施salary表的“工资”字段值限定在0~9999得约束。
3.实施depart表的“部门号”字段值唯一的非聚集索引的约束。
4.为worker表建立外键“部门号”,参考表depart的“部门号”列。
5.删除(1)小题所建立的约束。
6.删除(2)小题所建立的约束。
7.删除(3)小题所建立的约束。
8.删除(4)小题所建立的约束。
调试与结果测试:
代码注释:
无
――――――――――――以下内容为教师填写―――――――――――――――教师评阅:
成绩:
年月日。