图书馆一个数据库设计SQL_第1页
图书馆一个数据库设计SQL_第2页
图书馆一个数据库设计SQL_第3页
图书馆一个数据库设计SQL_第4页
图书馆一个数据库设计SQL_第5页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

综合设计性实验为图书馆设计一个数据库,此数据库对每个借阅者保存读者记录,包括:借书证号、姓名、性别、单位、可借数量。对每本书记录:书号、书名、作者、出版社。对每本被借出的书有:读者号、借出日期、应还日期。可以随时查阅书库中的书籍信息,所有的书籍均由书号唯一标识;可以随时查阅书籍借还情况,系统约定任何人可以借多本图书,任何一种图书可以为多人所借,借书证号具有唯一性。要求:1.基于数据库概论中所学的知识分析该数据库的基本结构,2.用Transact-sql命令完成如下要求:(1)创建数据库和数据表,定义每个表的主键和外键,为每个属性选择合适的数据类型,定义每个属性是否允许空值,是否有默认值等;(2)结合具体情况为数据库表设置合理的约束或规则;(3)如果需要,为数据表设计合理的触发器;(4)使用SQL语句,在你设计的每个表中插入至少3条数据,要求记录满足数据约束要求,且尽量真实可信;(5)自行设计查询要求,给出经常需要用到的查询语句。 3.写出完整的实验报告。附:实验报告模板网络工程系综合性实验实验报告课程名称 数据库技术与应用 学 号 10539013 姓 名 张欢 任课老师 高宁 2012年 11 月实验名称图书馆数据库设计create database library:创建图书馆数据库create table reader:创建读者记录数据表create table book:创建每本书记录数据表create table rb:创建借出的书数据表create rule 借出日期_rule:创建借出日期的规则并且绑定create rule 书号_rule:创建书号约束规则并且绑定create trigger set_可借数量:创建可借数量触发器alter table rb add constraint t:约束可借时间3个月select * from reader:查询reader表所有信息select * from book:查询book表所有信息select * from rb:查询rb表所有信息select * from rb where 姓名=张欢:查询张欢的所有信息select * from reader,rb:查询读者借书的所有信息源程序代码:create database librarygouse librarygocreate table reader(借书证号 char(10)not null primary key,姓名 nchar(4)not null,性别 char(1)check(性别 in(男,女),单位 char(20),可借数量 char(1)use librarygoinsert readervalues (10539013,张欢,男,安徽农业大学,3)insert readervalues (10539014,李四,女,经济技术学院,4)insert readervalues (10539015,张三,男,安徽医科大学,5)create table book(书号 char(16)not null primary key,书名 char(18)not null,作者 char(4),出版社 char(20)use librarygoinsert bookvalues (ab123,天龙八部,金庸,新华出版社)insert bookvalues (bc124,呐喊,鲁迅,安徽出版社)insert bookvalues (dc124,数据库,刘卫国,清华大学出版社)create table rb(读者号 char(10)unique,借出日期 datetime not null ,应还日期 datetime not null)alter table rbadd constraint t check(应还日期=1982-01-01and 借出日期=getdate()exec sp_bindrule 借出日期_rule,rb.借出日期create rule 书号_ruleas value like a-h%0-9exec sp_bindrule 书号_rule,book.书号 use librarygocreate trigger set_可借数量 on readerfor insert,deleteasif exists(select * from inserted)update 可借数量 set 可借数量=可借数量+1 where reader in (select reader from inserted)elseupdate 可借数量 set 可借数量=可借数量-1 where reader in (select reader from deleted)select * from readersel

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论