数据库原理课程设计实验【 创建存储过程与触发器】

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

存储过程与触发器实验日期和时间:

2016 年 5 月13 日、星

五第节

实验室:DJ2-信息管理实验室

班级:学号:姓名:

实验环境:

1.硬件:笔记本电脑

2.软件:SQL Server 2012

实验原理:

存储过程概念:存储过程是事先编好的,存储在数据库中的一组被编译了的T-SQL命令集合,这些命令用来完成对数据库的指定操作。存储过程可以接受用户的输入参数、向客户端返回表格或标量结果和消息、调用数据定义语言(DDL)和数据操作语言(DML)语句,然后返回输入参数。

触发器概念:触发器(trigger)是SQL server 提供给程序员和数据分析员来保证数据完整性的一种方法,它是与表事件相关的特殊的存储过程,它的执行不是由程序调用,也不是手工启动,而是由事件来触发,比如当对一个表进行操作(insert,delete,update)时就会激活它执行。触发器经常用于加强数据的完整性约束和业务规则等。

实验任务:

此作业成绩得分根据你完成的任务的难度和数量评分,完成后在实验室给老师演示验收,课后提交电子版报告。如额外完成自拟题目应当事先将所拟题目提交给老师或在报告中明确标注题意。

假定有学校的图书馆管理信息系统,可以用于日常管理书库和同学们的借还书工作。

以下列出参考的库表情况:

根据管理的业务需求来分析,该管理信息系统的数据库应至少包括如下数据表:(打★号的是必须有的表)

1.★图书现有库存表。作用:记录图书的现有库存情况。至少包括:书号、书名、

作者、简介、类别、价格、出版社、出版日期、现有库存数量、最小库存量、库

存总量、库存位置等。

2.★读者信息表。作用:记录读者信息。至少包括:读者编号、证件类型、证件号

码、姓名、性别、职业(可填写教师、学生、教工、其它……)、所属单位、地址、

联系电话等。

3.★借书记录表。作用:记录借书情况,以及是否归还。至少包括:借阅ID(主键,

可设置为自动编号)、书号、读者编号、借阅数量、借阅日期、是否归还、管理员

编号……等。

4.★还书记录表。作用:记录还书情况。至少包括:还书ID(主键,可设置为自动

编号)、书号、读者编号、归还数量、归还日期、是否超期(超过假设45天为超

期)、超期天数、管理员编号……等。(附:为简化操作,续借可视为归还后再借)。

5.管理员信息表。作用:记录负责管理书库和借书还书工作的管理员信息。至少包

括:管理员编号、职工编号(在职工档案表中的职工编号)、用户名、密码、管理

员级别等……。

6.职工档案表表。作用:记录职工档案。至少包括: 职工编号、姓名、性别、单位、

职称、职务、出生日期、学历、……其它字段自拟。

7.入库单表。作用:记录图书馆购买图书补充书库图书时的入库书单。包括字段:

入库单ID、入库日期、入库书号、书名、入库数量……其它请根据图书现有库存

表自拟……经手人编号等。

实验步骤1、设计并创建数据库。

①)设计数据库,绘制ERD设计图。

②)根据ERD创建数据库中的所有表,并根据业务需求正确设置主键、外键、约束条件、默

认值等。

③)创建关系图,建立表之间的联系以保证参照完整性。注意,建表时,表中的外键的数据

类型应当与其所参照的主表中的主键数据类型一致。(至少创建题目所需要的表)

④)基本数据录入。可以直接录入,也可将其它格式的表中的数据导入,或查询其它表中可

利用的数据并插入到现有的表中。

ERD设计图

图书现有库存表

PK书号

书名

作者

简介

类别

价格

出版社

出版日期

现有库存数

最小库存量

库存总量

库存位置

读者信息表

PK读者编号

证件类型

证件号码

姓名

性别

职业

所属单位

地址

联系电话

借书记录表

PK借阅ID

FK1书号

FK2读者编号

借阅数量

借阅日期

是否归还

管理员编号

还书记录表PK还书ID

FK1书号

FK2读者编号

归还数量

归还日期

是否超期

超期天数FK3管理员编号

管理员信息表

PK管理员编号

FK1职工编号

用户名

密码

管理员级别

职工档案表

PK职工编号

姓名

性别

单位

职称

职务

出生日期

学历入库单表

PK入库单ID

入库日期

入库书号

书名

入库数量

经手人编号

原代码:

创建数据库、所有表,并根据业务需求正确设置主键、外键、约束条件、默认值

create database图书管理系统;

use图书管理系统;

create table图书现有库存表(

书号char(10)primary key,

书名char(10)not null,

作者char(10),

简介varchar,

类别char(10),

价格money not null,

出版社char,

出版日期datetime,

现有库存数int,

最小库存量int,

库存总量int,

库存位置varchar default'3F45'

);

create table读者信息表(

读者编号nchar(10)primary key,

证件类型nchar(4),

证件号码nchar(13),

姓名char(10),

性别char(2)default'男',check(性别in('男','女')),

职业char(4),

所属单位char(8),

地址char(10),

联系电话char(11)

)

create table借书记录表(

借阅ID int identity(1,1)primary key,

读者编号char(5),

借阅数量int,

借阅日期datetime default getdate(),

是否归还char(2)default'否',

书号char(10),

管理员编号char(10),

foreign key(书号)references图书现有库存表(书号),

foreign key(管理员编号)references管理员信息表(管理员编号), );

create table还书记录表(

还书ID int identity(1,1)primary key,

书号char(10),

foreign key(书号)references图书现有库存表(书号),

归还数量int,

相关文档
最新文档