[实验四数据完整性控制.doc

  1. 1、本文档共11页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[实验四数据完整性控制

本科实验报告 课程名称: 数据库系统原理 实验项目: 数据完整性控制 实验地点: 4606 专业班级: 学号: 学生姓名: 指导教师: 2012 年 10 月 30 日 一 目的??(1)了解 SQL Serer 数据库系统中数据完整性控制的基本方法 (2)熟练掌握常用 CREATE 或 ALTER 在创建或修改表时设置约束 (3)了解触发器的机制和使用 (4)验证数据库系统数据完整性控制 二 实验 使用 SQL Server 数据库管理系统提供的 SSMS 和查询编辑器。 三 实验内容  结合 ST 数据库中的各个表,设置相关的约束,要求包括主键约束、外键约束、唯一约束、检查约束、非空约束、CONSTRAINT 子句等,掌握各约束的定义方法。  设置一个触发器,实现学生选课总学分的完整性控制,了解触发器的工作机制。  设计一些示例数据,验证完整性检查机制。 实验步骤: 1 使用 SQL 语句设置约束 使用 CREATE 或 ALTER 语句完成如下的操作,包括:  设置各表的主键约束  设置相关表的外键  设置相关属性的非空约束、默认值约束、唯一约束  设置相关属性的 CHECK 约束  完整性约束命名子句 2 使用触发器 创建一个触发器,实现如下的完整性约束:  当向 SC 表中插入一行数据时,自动将学分累加到总学分中。  记录修改学分的操作。 3 检查约束和触发器 分别向相关表插入若干条记录,检查你设置的完整性约束是否有效: 1) 插入若干条包含正确数据的记录,检查插入情况 2) 分别针对设置的各个约束,插入违反约束的数据,检查操作能否进行 3) 向 SC 表插入若干行数据,检查触发器能否实现其数据一致性功能。 建立一个学生选课数据库,熟悉约束及触发器的使用方法。 1 声明完整性约束 创建学生选课数据库 TEST,包括三个基本表,其中 Student 表保存学生基 本信息,Course 表保存课程信息,SC 表保存学生选课信息,其结构如下表: 表 3-1 Student 表结构 列名称 用途 类型 长度 约束 备注 Sno 学号 字符 8 主键 Sname 姓名 字符 8 非空 Ssex 性别 字符 2 (男,女) Sage 年龄 整型 Sdept 所在系 字符 20 Sclass 班级 字符 4 非空 Stotal 总学分 整型 1)创建基本表及约束 (1)创建 Student 表 CREATE TABLE Student (Sno CHAR(8) PRIMARY KEY, Sname CHAR(8) NOT NULL, Ssex CHAR(2) CHECK( Ssex in (男,女)), Sage SMALLINT, Sdept CHAR(20), Sclass CHAR(4) NOT NULL, Stotal smallint DEFAULT 0); (2)创建 Course 表 CREATE TABLE Course (Cno CHAR(4) CONSTRAINT PK_Course PRIMARY KEY, Cname CHAR(40), Cpno CHAR(4) , Ccredit SMALLINT); (3)创建 SC 表 CREATE TABLE SC (Sno CHAR(8) FOREIGN KEY (Sno) REFERENCES Student(Sno), Cno CHAR(4), Grade SMALLINT CONSTRAINT SC_CHECK CHECK(Grade 0 AND Grade100), PRIMARY KEY (Sno,Cno), CONSTRAINT FK_SC FOREIGN KEY (Cno) REFERENCES Course(Cno)); (4)检查表是否创建成功。 2)插入数据 将如下表格中的数据分别插入到数据库相应的表中:

文档评论(0)

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

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

1亿VIP精品文档

相关文档