77范文网 - 专业文章范例文档资料分享平台

数据库原理与应用大作业(2)

来源:网络收集 时间:2019-06-11 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

管理员表

列名 用户名 性别 口令 列名 类型名 借阅期限 tinyint 图书表 列名 ISBN 书名 作者 出版社 出版时间 单价 类型名 状态 列名 部门名 电话 列名 工号 姓名 性别 姓名 Email 部门名 列名 业务编号 ISBN 工号 借办理人 借出日期 还办理人 归还日期 列名 int char(20) Char(4) Char(10) datetime Char(10) datetime 催还记录表 类型 约束 Char(4) Nchar(4) Char(2) Nchar(4) Char(30) Nchar(10) 借还记录表 类型 约束 Pk 自动标示 Fk references 图书表.isbn Fk references 教师表.工号 NOT NULL NOT NULL 类型 Char(20) Nchar(20) Nchar(20) Nchar(20) DateTime money Nchar(10) Nchar(2) 部门表 类型 NChar(10) char(11) 教师表 类型 pk NOT NULL NOT NULL,且默认为男 类型 Char(10) Char(2) Nchar(20) 类型表 类型 NChar(10) pk pk 约束 NOT NULL,且默认为男 NOT NULL 约束 NOT NULL 约束 pk NOT NULL NOT NULL NOT NULL NOT NULL NOT NULL FK references 类型表.图书类型 状态 in (库存,借出) 约束 pk NOT NULL 约束 NOT NULL NOT NULL Fk references 部门表.部门名 业务编号 ISBN 工号 办理人 催还日期 int char(11) Char(4) Char(10) datetime Pk 自动标示 Fk references 图书表.isbn Fk references 教师表.工号 NOT NULL NOT NULL 1) 2)

使用SQL语句,创建数据库,数据库名为BookStore

使用SQL语句,在数据库中创建表,设定表的主键约束、外键约束、

语句:Create Databse Bookstore

检查约束、非空约束。

语句:

CREATE TABLE 管理员表(

管理员名nchar(10) NOT NULL,

性别Char(2) not null DEFAULT '男' , 口令nchar(20) NOT NULL,

CONSTRAINT PK_管理员 PRIMARY KEY CLUSTERED (管理员名 ASC) ) ON [PRIMARY] GO CREATE TABLE 类型表(

类型名nchar(10) NOT NULL, 借阅期限tinyint NOT NULL,

CONSTRAINT PK_类型PRIMARY KEY CLUSTERED (类型名 ASC) ) ON [PRIMARY] GO

CREATE TABLE 图书表(

ISBN char(20) NOT NULL,

书名 nchar(20) NOT NULL, 作者 nchar(20) NOT NULL, 出版社 nchar(20)NOT NULL , 出版时间 datetime NOT NULL , 单价 money NOT NULL,

类型名 nchar(10) NOT NULL,

状态 nchar(2) NOT NULL CHECK(状态in('库存','借出')), CONSTRAINT PK_图书 PRIMARY KEY CLUSTERED (ISBN ASC),

CONSTRAINT FK_图书_类型FOREIGN KEY(类型名)REFERENCES 类型表(类型名) ON UPDATE CASCADE ON DELETE CASCADE ) ON [PRIMARY]

GO

CREATE TABLE 部门表(

部门名 nchar(10) NOT NULL, 电话 char(11) ,

CONSTRAINT PK_部门表 PRIMARY KEY CLUSTERED ( 部门名 ASC)

) ON [PRIMARY] GO

CREATE TABLE 教师表(

工号 char(4) NOT NULL, 姓名 nchar(4) NOT NULL,

性别 Char(2) not null DEFAULT '男' , Email char(30) NOT NULL,

部门名 nchar(10) NOT NULL,

CONSTRAINT PK_教师表PRIMARY KEY CLUSTERED (工号ASC),

CONSTRAINT FK_部门表_教师表FOREIGN KEY(部门名)REFERENCES 部门表(部门名) ON UPDATE CASCADE ON DELETE CASCADE, ) ON [PRIMARY] GO

CREATE TABLE 借还记录表(

业务编号 int identity(0,1) NOT NULL , ISBN char(20) NOT NULL,

工号 char(4) NOT NULL,

代办理人char(10) NOT NULL, 借出日期datetime NOT NULL, 还办理人char(10) NULL, 归还日期datetime NULL,

CONSTRAINT PK_借还记录表PRIMARY KEY CLUSTERED (业务编号ASC),

CONSTRAINT FK_借还记录表_教师表FOREIGN KEY(工号)REFERENCES 教师表(工号) ON UPDATE CASCADE ON DELETE CASCADE,

CONSTRAINT FK_借还记录表_借还记录表FOREIGN KEY(ISBN) REFERENCES 图书表(ISBN) ON UPDATE CASCADE ON DELETE CASCADE ) ON [PRIMARY] GO

CREATE TABLE 催还记录表(

业务编号int identity(0,1) NOT NULL, ISBN char(20) NOT NULL,

工号 char(4) NOT NULL, 办理人 char(10) NOT NULL, 催还日期 datetime ,

CONSTRAINT PK_催还记录表PRIMARY KEY CLUSTERED(业务编号 ASC),

CONSTRAINT FK_催还记录表_教师表FOREIGN KEY(工号) REFERENCES 教师表(工号) ON UPDATE CASCADE ON DELETE CASCADE,

CONSTRAINT FK_催还记录表_图书FOREIGN KEY(ISBN) REFERENCES 图书表(ISBN) ON UPDATE CASCADE ON DELETE CASCADE ) ON [PRIMARY]

GO

3) 写以下增删改查操作的SQL语句

1. 增加三条类型表数据

语句:

INSERT INTO 类型表(类型名,借阅期限) VALUES('计算机',150) INSERT INTO 类型表(类型名,借阅期限)VALUES('文学',180) INSERT INTO 类型表(类型名,借阅期限)VALUES('经济',30)

--delete 类型表

--select * from 类型表

2. 增加三条部门表数据 语句:

INSERT INTO 部门表(部门名,电话) VALUES('网络系','020-8188483') INSERT INTO 部门表(部门名,电话) VALUES('外语系','020-8188482') INSERT INTO 部门表(部门名,电话) VALUES('管理系','020-8188481') --select * from 部门表 3. 增加三条教师表数据 语句:

INSERT INTO 教师表(工号,姓名,性别,Email ,部门名) VALUES('J001','张三','女','zs@163.com','网络系')

INSERT INTO 教师表(工号,姓名,性别,Email ,部门名)VALUES('J002','李四','男','LS@163.com','网络系')

INSERT INTO 教师表(工号,姓名,性别,Email ,部门名)VALUES('J003','王五','男','ww@163.com','外语系')

--select * from 教师表

4. 增加五条图书表数据 语句:

INSERT INTO 图书表(ISBN,书名,作者,出版社,出版时间,单价,类型名,状态)

VALUES('9789302218661','C#','江红','清华大学出版社','2012.2.10',45,'计算机','库存')

INSERT INTO 图书表(ISBN,书名,作者,出版社,出版时间,单价,类型名,状态) VALUES('9787802229761','人生博弈密码','吕叔春','中国华侨出版社','2009.2.1',36.8,'文学','库存')

INSERT INTO 图书表(ISBN,书名,作者,出版社,出版时间,单价,类型名,状态)

VALUES('9787301150894','经济学原理','梁小民','北京大学出版社','2009.4.1',54,'经济','借出')

--select * from 图书表

5. 增加三条管理员表数据 语句:

INSERT INTO 管理员表(管理员名,性别,口令) VALUES('吴管','男','wg001') INSERT INTO 管理员表(管理员名,性别,口令) VALUES('李管','女','Lg002') INSERT INTO 管理员表(管理员名,性别,口令) VALUES('徐管','男','Xg003')

--select * from 管理员表 --select * from 教师表 --select * from 部门表 --select * from 类型表 --select * from 图书表 --select * from 管理员表

6. 某教师今天借了某书,涉及两个操作,一是图书表的状态改为“借出”,二是增加一个借还表记

录 语句:

insert 借还记录表(ISBN ,工号,代办理人,借出日期,还办理人,归还日期)

values('9787802229761','J001','wg001','2012.3.20','Lg002','')

--select * from 借还记录表 --delete 借还记录表

update 图书表 set 状态='借出'

where ISBN='9787802229761'

--select * from 图书表

7. 将某书的单价改为32元。 语句:

update 图书表 set 单价=32

where ISBN='9787802229761'

--select * from 图书表

8. 查询某教师的借还书记录 语句:

--select * from 教师表 --select * from 部门表 --select * from 类型表 --select * from 图书表 --select * from 管理员表 --select * from 借还记录表

select a.工号,姓名,部门名,书名

from 教师表 a join 借还记录表 c on a.工号=c.工号

join 图书表 b on c.ISBN=b.ISBN where a.工号='J001' go

9. 查询某本书的流转记录 语句:

--select * from 借还记录表

select a.工号,姓名,部门名,书名,借出日期,归还日期 from 教师表 a,图书表 b,借还记录表 c

where a.工号=c.工号 and b.ISBN=c.ISBN and b.ISBN='9787802229761'

4) 写出创建以下视图的SQL语句

1. 借出图书视图 语句:

--select * from 借还记录表 --select * from 图书表

Create view 借出图书视图 As

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库数据库原理与应用大作业(2)在线全文阅读。

数据库原理与应用大作业(2).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/zonghe/656263.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: