数据完整性解析.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
福建工程学院信息科学与工程学院 实验报告– 2016 学年第 2 学期 任课老师: 林芳 课程名称 数据库系统原理及应用 班级 计科1401 学号 3141911119 姓名 吴亮 实验题目 数据完整性 实验时间 实验日期: 2016.4.12 提交日期: 2016.4.12 实验目的、要求 实验目的通过。 实验结创建 create database bang on primary ( name = bangdata, filename = D:\软件主体文件\sql2012\数据库\bang_data.mdf, size = 5mb, maxsize = unlimited, filegrowth = 1 mb ) log on ( name = bangLog, filename = D:\软件主体文件\sql2012\数据库\bang_Log.ldf, size = 5 mb, maxsize = unlimited, filegrowth = 1 mb ); go use bang 创建三个表表Employees存储雇员的代号()、身份证号码(18个字符)、名字(最长20个字符)和工资等信息;表Departments存储部门的部门号(2个字符,唯一)、部门名称(30个字符)等信息;表Work每一行表示某雇员在某部门工作过及其开始工作时间和备注。:工资的值大于0,身份证号码唯一, create table employees ( eno int primary key identity(1000001,1), eid char(18) unique not null, ename char(20), esal int check(esal 0) ) create table departments ( dno char(2) primary key, dname char(30), ) create table work ( eno int, dno char(2), wtime date default(getdate()), remarks char(100), primary key(eno,dno), foreign key(eno) references employees(eno), foreign key(dno) references departments(dno) ) Test: 创建以下两个关系模式,先不进行任何完整性定义。? 职工(职工号,姓名,年龄,职务,工资,部门号) 部门(部门号,名称,经理名,地址,电话号码) create table workers ( wno char(20) not null, wname char(20), wage int, wpost char(20), wsal int, dno char(20) ) create table department ( dno char(20) not null, dname char(20), dboss char(20), dadd char(20), dtel char(20) ) 在内容3已经创建的表结构上添加如下完整性,每个完整性都要命名,自己设计数据验证完整性: 1)定义每个模式的主码; alter table workers add constraint pk_workers primary key(wno) go alter table department add constraint pk_department primary key(dno) Test: 将wno置空时 将dno置空时 2)定义参照完整性,对部门号删除和更新时采用级联策略; alter table workers add constraint fk_workers_dno foreign key(dno) references department(dno) on delete cascade on update cascade Test: 部门信息: 添加员工信息时部门号不存在 部门和员工信息 删除某部门时 3)定义职工的年龄不能小于18岁,并且不能超过60岁; alter table workers add constraint ck_workers_wage check(wage between 18 and 60) Test: 职工年龄不在区间内时 4)职工的姓名不能为空; alter table

文档评论(0)

ss55863378 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档