欢迎来到课桌文档! | 帮助中心 课桌文档-建筑工程资料库
课桌文档
全部分类
  • 党建之窗>
  • 感悟体会>
  • 百家争鸣>
  • 教育整顿>
  • 文笔提升>
  • 热门分类>
  • 计划总结>
  • 致辞演讲>
  • 在线阅读>
  • ImageVerifierCode 换一换
    首页 课桌文档 > 资源分类 > DOC文档下载  

    大数据库图书信息管理系统大数据库SQL语句.doc

    • 资源ID:12751       资源大小:87KB        全文页数:9页
    • 资源格式: DOC        下载积分:10金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要10金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    大数据库图书信息管理系统大数据库SQL语句.doc

    word实验 SQL语言一、 实验目的1、 理解数据库以与数据表的设计;2、 熟悉SQL Server2005中的数据类型;3、 熟悉使用SQL语句创建和删除模式和索引;4、 掌握使用SQL语句创建、修改和删除数据表;5、 掌握使用SQL语句查询表中的数据;6、 掌握使用SQL语句插入、修改和删除数据表中的数据;7、 掌握使用SQL语句创建、删除、查询和更新视图。二、 实验容一创建数据库和模式1、通过SQL语句创建图书信息管理数据库,命名为“db_Library,数据文件和日志文件放在D盘下以自己学号和命名的文件夹中,数据文件的逻辑名为db_Library_data,数据文件的操作系统名为db_Library_data.mdf,文件初始大小为10MB,最大可增加至300MB,增幅为10%;日志文件的逻辑名为db_Library_log,日志文件的操作系统名为db_Library_data.ldf,文件初始大小为5MB,最大可增加至200MB,增幅为2MB。2、通过SQL语句在该数据库中创建模式L-C。二创建和管理数据表要求为各数据表的字段选择适宜的数据类型与名称;为各数据表设置相应的完整性约束条件。1、通过SQL语句将以下数据表创建在L-C模式下:课程信息表tb_course课程编号Course number 、课程名Course name 、先修课The first course 、学分credit2、通过SQL语句将以下数据表创建在该数据库的默认模式dbo下:图书类别信息表tb_booktype)类别编号Type number 、类别名称Category name 图书信息表tb_book图书编号ISBN 、类别编号Type number、书名title、作者author、BookPublic、定价BookPrice、库存数Inventory number 读者信息表tb_reader读者编号Reader ID 、性别、学号Student ID、班级、系部pastern借阅信息表tb_borrow)图书编号、读者编号、借阅日期Borrowing date 、归还日期Return date 3、通过SQL语句对读者信息表进展修改:删除系部字段、添加所在系字段。4、通过SQL语句对图书信息表进展修改:将定价的数据类型改为REAL。5、通过SQL语句删除课程信息表。三创建和删除索引1、使用SQL语句在图书信息表上创建一个非聚簇索引IX_S_QUANTITY,要求按照该表中库存数字段的降序创建。2、使用SQL语句在读者信息表上创建一个唯一的非聚簇索引IX_S_NAME,要求按照该表中的字段的升序创建。3、使用SQL语句删除之前创建的两个索引。四数据库与数据表设计根据周围的实际应用情况,自选一个小型的数据库应用项目进展研究,完成该系统的设计。要求2人一组,通过需求分析,列出系统的主要功能,并完成该系统数据库的逻辑结构设计。例如可选择学籍管理系统、企业进销存管理系统、人事管理系统或在线考试系统等。五数据查询通过SSMS向各数据表中添加以下记录。1图书类别信息表类别编号类别名称类别编号类别名称类别编号类别名称1数学4文学7建筑2英语5艺术8化学3计算机6电子信息9物理2图书信息表图书编号类别编号书名作者定价库存数100013数据库管理王珊高等教育10100023软件测试贺平机械工业5100033C+程序设计谭浩强清华大学8100044红楼梦曹雪芹人民文学5100054西游记罗贯中人民文学8100064红与黑司汤达人民文学5100071高等数学翼清华大学4100088有机化学翔高等教育5100092大学英语王琳高等教育10100102英语教程王琳高等教育53读者信息表读者编号性别学号班级所在系R10001小航男085110108511计算机系R10002王文广女085110208511计算机系R10003理女085110308511计算机系R10004彦宏男085120108512计算机系R10005丽霞女085120208512计算机系R10006王强男072110407211电子系R10007宝田男072120407212电子系R10008宋文霞女076110407611建工系R10009芳菲女088110408811外语系R10010常江宁男088120408812外语系4借阅信息表图书编号读者编号借阅日期归还日期10002R100032009-9-202009-10-2010003R100032009-9-202009-10-2010004R100032009-9-302009-10-3010009R100032009-9-302009-10-3010009R100072009-5-202009-6-2010010R100072009-5-202009-6-2010009R100092009-5-302009-6-3010010R100092009-5-222009-6-2210002R100092009-5-222009-6-2210003R100092009-5-302009-6-30对以上数据表,完成以下操作:1查询每本图书的所有信息;2查询每个读者的读者编号、和班级;3查询每条借阅记录的借阅天数函数DATEDIFF获取两个日期的差;4查询被借阅过的图书的图书编号;5查询图书编号为“10006的书名和作者;6查询库存数在5到10本之间的图书的图书编号和书名;7查询计算机系或电子系姓的读者信息;8查询书名包括“英语的图书信息;9统计男读者、女读者的人数;10统计各类图书的类别编号、平均定价以与库存总数;11统计每本书籍借阅的人数,要求输出图书编号和所借人数,查询结果按人数降序排列;12查询有库存的各类别图书的类别编号、类别名称和借阅数量;13查询借阅了“大学英语一书的读者,输出读者、性别、系部;14查询每个读者的读者编号、所借图书编号以与所借阅日期;LEFT OUTER JOIN15查询现有图书中价格最高的图书,输出书名、作者、定价;16查询借阅了“大学英语但没有借阅“C+程序设计的读者,输出读者、性别、系部;17统计借阅了2本以上图书的读者信息;18查询借阅了“大学英语一书或者借阅了“C+程序设计一书的读者信息;用集合查询完成19查询既借阅了“大学英语一书又借阅了“C+程序设计一书的读者信息;用集合查询完成20查询计算机系中比其他系所有读者借书数量都多的读者的信息;21在读者信息表中插入一条新的记录读者编号:R10011;:三;所在系:电子系;22定义一个表tb_booknew,包含图书编号、书名和类别名称字段,要求将类编编号为“3的图书的图书编号、书名和类别名称插入到tb_bknew表中;23将类别编号为“3的所有图书的库存数增加5;24将“C+程序设计这本书的归还日期增加一个月函数DATEADD。25删除为“三的读者的信息;26删除tb_bknew表中的所有数据;27创建一个名为“读者借阅信息_VIEW的视图,要求显示计算机系所有读者的借阅信息,包括读者编号、所在系、图书编号、书名和借阅日期等字段,更新该视图时要保证只有计算机系的读者借阅信息;28创建一个名为“图示借阅信息_VIEW的视图,要求显示图书的借阅情况,包括图书编号、书名、库存数、借阅次数字段;29查询借阅次数大于2的图书的图书编号、书名、库存数和借阅次数;30删除“图示借阅信息_VIEW视图。三、 实验步骤usemastergocreatedatabasedb_Libraryonprimary(name=N'db_Library_data',filename='E:SQLdb_Library_data.mdf',size=10MB,maxsize=300MB,filegrowth=10%)logon(name='db_Library_log',filename='E:SQLdb_Library_data.ldf',size=5MB,maxsize=200MB,filegrowth=2MB)gousedb_Librarygocreateschema"L-C"authorizationguestcreatetabletb_course-课程信息表(Coursenumberint,Coursenamechar(20),Thefirstcoursechar(20),Creditint)gocreatetabletb_booktype-图书类别信息表(Typenumberint,Categorynamechar(20)gocreatetabletb_book-图书信息表(ISBNint,Typenumberint,Titlechar(20),Authorchar(20),BookPublicchar(20),BookPricefloat,Inventorynumberint)gocreatetabletb_reader-读者信息表(ReaderIDchar(20),Namechar(20),Sexchar(2),StudentIDint,Classchar(20),Pasternchar(20)gocreatetabletb_borrow-借阅信息表(ISBNint,ReaderIDchar(20),Borrowingdatechar(20),Returndatechar(20)goaltertabletb_readerdropcolumnPasternaltertabletb_readeraddcolumnPasternaltertabletb_bookaltercolumnBookPricerealdroptabletb_course-创建和删除索引createindexIX_S_QUANTITYontb_book(Inventorynumber)createindexIX_S_NAMEontb_reader(Nameasc)dropindexIX_S_QUANTITYdropindexIX_S_NAME-图书类别信息表信息insertintotb_booktypevalues(1,'数学')insertintotb_booktypevalues(2,'英语')insertintotb_booktypevalues(3,'计算机')insertintotb_booktypevalues(4,'文学')insertintotb_booktypevalues(5,'艺术')insertintotb_booktypevalues(6,'电子信息')go-图书信息表信息insertintotb_bookvalues(10001,3,'数据库管理','王珊','高等教育',10)insertintotb_bookvalues(10002,3,'软件测试','贺平','机械工业',5)insertintotb_bookvalues(10003,3,'C+程序设计','谭浩强','清华大学',8)insertintotb_bookvalues(10004,4,'红楼梦','曹雪芹','人民文学',5)insertintotb_bookvalues(10005,4,'西游记','罗贯中','人民文学',8)insertintotb_bookvalues(10006,4,'红与黑','司汤达','人民文学',5)insertintotb_bookvalues(10007,1,'高等数学','翼','清华大学',4)insertintotb_bookvalues(10008,8,'有机化学','翔','高等教育',5)insertintotb_bookvalues(10009,2,'大学英语','王琳','高等教育',10)insertintotb_bookvalues(10010,2,'英语教程','王琳','高等教育',5)go-读者信息表信息insertintotb_readervalues('R10001','小航','男',0851101,'08511','计算机系')insertintotb_readervalues('R10002','王文广','女',0851102,'08511','计算机系')insertintotb_readervalues('R10003','理','女',0851103,'08511','计算机系')insertintotb_readervalues('R10004','彦宏','男',0851201,'08512','计算机系')insertintotb_readervalues('R10005','丽霞','女',0851202,'08512','计算机系')insertintotb_readervalues('R10006','王强','男',0721104,'07211','电子系')insertintotb_readervalues('R10007','宝田','男',0721204,'07212','电子系')insertintotb_readervalues('R10008','宋文霞','女',0761104,'07611','建工系')insertintotb_readervalues('R10009','芳菲','女',0881104,'08811','外语系')insertintotb_readervalues('R10010','常江宁','男',0881204,'08812','外语系')go-借阅信息表信息insertintotb_borrowvalues(10002,'R10003','2009-9-20','2009-10-20')insertintotb_borrowvalues(10003,'R10003','2009-9-20','2009-10-20')insertintotb_borrowvalues(10004,'R10003','2009-9-30','2009-10-30')insertintotb_borrowvalues(10009,'R10003','2009-9-30','2009-10-30')insertintotb_borrowvalues(10009,'R10007','2009-5-20','2009-6-20')insertintotb_borrowvalues(10010,'R10007','2009-5-20','2009-6-20')insertintotb_borrowvalues(10009,'R10009','2009-5-30','2009-6-30')insertintotb_borrowvalues(10010,'R10009','2009-5-22','2009-6-22')insertintotb_borrowvalues(10002,'R10009','2009-5-22','2009-6-22')insertintotb_borrowvalues(10003,'R10009','2009-5-30','2009-6-30')go-(1)查询每本图书的所有信息;select*fromtb_book-2查询每个读者的读者编号、和班级;selectReaderID,Name,Classfromtb_reader-3查询每条借阅记录的借阅天数;selectdatediff(DAY,Borrowingdate,Returndate)fromtb_borrow-4查询被借阅过的图书的图书编号;selectdistinctISBNfromtb_borrow-5查询图书编号为“的书名和作者;selectTitle,Authorfromtb_bookwhereISBN='10006'-6查询库存数在到本之间的图书的图书编号和书名;SELECTISBN,Titlefromtb_bookwhereInventorynumberbetween 5 and 10-7查询计算机系或电子系姓的读者信息;select*fromtb_readerwherepasternin('计算机系','电子系')-8查询书名包括“英语的图书信息;select*fromtb_bookwhereTitle='英语'-9统计男读者、女读者的人数;selectSex,COUNT(*)fromtb_readergroupbySex-10统计各类图书的编号、平均定价以与库存总数;selectTypenumber,AVG(BookPrice)as平均定价,SUM(Inventorynumber)as库存总数fromtb_bookgroupbyTypenumber-11统计每本书籍借阅的人数,要求输出图书编号和所借人数,查询结果按人数降序排列;selectISBN,COUNT(*)fromtb_borrowgroupbyISBNorderbyCOUNT(*)desc-12查询有库存的各类别图书的类别编号、类别名称和借阅数量;selecttb_book.Typenumber,Categoryname,COUNT(*)fromtb_book,tb_booktype,tb_borrowwheretb_book.Typenumber=tb_booktype.Typenumberandtb_book.ISBN=tb_borrow.ISBNgroupbytb_book.Typenumber,tb_booktype.Categoryname-13查询借阅了“大学英语一书的读者,输出读者、性别、系部;selectName,Sex,Pasternfromtb_readerwhereReaderIDin(selectReaderIDfromtb_borrowwhereISBNin(selectISBNfromtb_bookwhereTitle='大学英语')-14查询每个读者的读者编号、所借图书编号与所借阅日期;selecttb_reader.ReaderID,Name,Borrowingdatefromtb_readerleftouterjointb_borrowontb_reader.ReaderID=tb_borrow.ReaderID-15查询现有图书中价格最高的图书,输出书名、作者、定价;selectTitle,Author,BookPricefromtb_bookwhereBookPrice=(selectMAX(BookPrice)fromtb_book)-16查询借阅了“大学英语但没有借阅“C+程序设计的读者,输出读者、性别、系部selectName,Sex,Pasternfromtb_readerwhereNamein(selectNamefromtb_borrowwhereISBNin(selectISBNfromtb_bookwhereTitle='大学英语')andNamenotin(selectNamefromtb_borrowwhereISBNin(selectISBNfromtb_bookwhereTitle='C+程序设计')-17统计借阅了本以上图书的读者信息;select*fromtb_readerwhereReaderIDin(selectReaderIDfromtb_borrowgroupbyReaderIDhavingCOUNT(*)>2)-18查询计算机系中比其他系所有读者借书数量都多的读者的信息;select*fromtb_readertbr1wherePastern='计算机系'andReaderIDin(selecttb_reader.ReaderIDfromtb_reader,tb_borrowwheretb_reader.ReaderID=tb_borrow.ReaderIDandtb_reader.ReaderID=tbr1.ReaderIDgroupbytb_reader.ReaderIDhavingcount(ISBN)>any(selectcount(ISBN)fromtb_reader,tb_borrowwheretb_reader.ReaderID=tb_borrow.ReaderIDandPastern<>'计算机系'groupbytb_reader.ReaderID)-19查询借阅了“大学英语一书或者借阅了“C+程序设计一书的读者信息;用集合查询完成select*fromtb_readerwhereReaderIDin(selectReaderIDfromtb_borrow,tb_bookwheretb_borrow.ISBN=tb_book.ISBNandTitle='大学英语')unionselect*fromtb_readerwhereReaderIDin(selectReaderIDfromtb_borrow,tb_bookwheretb_borrow.ISBN=tb_book.ISBNandTitle='C+程序设计')-20查询既借阅了“大学英语一书又借阅了“C+程序设计一书的读者信息。用集合查询完成select*fromtb_readerwhereReaderIDin(selectReaderIDfromtb_borrow,tb_bookwheretb_borrow.ISBN=tb_book.ISBNandTitle='大学英语')intersectselect*fromtb_readerwhereReaderIDin(selectReaderIDfromtb_borrow,tb_bookwheretb_borrow.ISBN=tb_book.ISBNandTitle='C+程序设计')-21在读者信息表中插入一条新的记录读者编号:R10011;:三;所在系:电子系;insertintotb_reader(ReaderID,Sex,Pastern)values ('R10011','三','电子系')-22假设存在一个表tb_booknew,包含图书编号、书名和类别名称字段,要求将类编编号为“的图书的图书编号、书名和类别名称插入到tb_bknew表中;createtabletb_booknew(ISBNchar(10),Titlevarchar(20),Typenamevarchar(20)insertintotb_booknewselecttb_book.ISBN,tb_book.Title,tb_booktype.Categorynamefromtb_book,tb_booktypewheretb_book.Typenumber=tb_booktype.Typenumberandtb_book.Typenumber='3'-23将类别编号为“的所有图书的库存数增加;updatetb_booksetInventorynumber=Inventorynumber+5 whereTypenumber='3'-24将“C+程序设计这本书的归还日期增加一个月函数DATEADD。updatetb_borrowsetBorrowingdate=DATEADD(MONTH,1,Returndate)whereISBNin(selectISBNfromtb_bookwhereTitle='C+程序设计')-25删除为“三的读者的信息;deletefromtb_readerwhereName='三'-26删除tb_bknew表中的所有数据;deletefromtb_booknew-27创建一个名为“读者借阅信息_VIEW的视图,要求显示计算机系所有读者的借阅信息,createview读者借阅信息_VIEW(ReaderID,Name,Pastern,ISBN,Title,Borrowingdate)asselecttb_reader.ReaderIDReaderID,Name,Pastern,tb_book.ISBNISBN,Title,Borrowingdatefromtb_book,tb_reader,tb_borrowwheretb_book.ISBN=tb_borrow.ISBNandtb_reader.ReaderID=tb_borrow.ReaderIDandPastern='计算机系'-28创建一个名为“图示借阅信息_VIEW的视图,要求显示图书的借阅情况,包括图书编号、书名、库存数、借阅次数字段;createview图示借阅信息VIEW(ISBN,Title,Inventorynumber)asselecttb_book.ISBN,Title,Inventorynumber,COUNT(*)numberfromtb_book,tb_borrowwheretb_book.ISBN=tb_borrow.ISBNgroupbytb_book.ISBN,Title,Inventorynumber-29查询借阅次数大于的图书的图书编号、书名、库存数和借阅次数;select*from读者借阅信息_VIEWwherenumber>2-30删除“图示借阅信息_VIEW视图。dropview图示借阅信息_VIEW9 / 9

    注意事项

    本文(大数据库图书信息管理系统大数据库SQL语句.doc)为本站会员(夺命阿水)主动上传,课桌文档仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知课桌文档(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-1

    经营许可证:宁B2-20210002

    宁公网安备 64010402000986号

    课桌文档
    收起
    展开