仲恺农业工程学院实验报告纸
实验2.2 数据修改
一、实验目的
近现代史1.熟悉使用T-SQL语句对数据库进行数据插入操作。
2.熟悉使用T-SQL语句对数据库进行数据更新操作。
3.熟悉使用T-SQL语句对数据库进行数据删除操作。
二、实验内容
在数据库LibraryLib上按下列要求进行数据更新。
1.使用SQL语句向“用户信息表Urs”中插入元组(用户标识:LiS;用户名:1;密码:2;用户名称:李生;性别:男(0);部门:计算系;已借图书:0)。
问:本题可以省略into子句中的属性名吗?如果要省略,需要注意什么?
2.向Publish(出版社信息) 表插入一条新的记录,在该记录中,出版社名为:国防工业出版社,地址为:北京市海淀大街籍海楼,出版社email为:*******************。
水浒传白话文3.对每个出版社,求出所购图书总数和图书总价格,并把结果存入新建表“图书统计Temp_CNTBK”表中。
4.在图书信息表中增加图书:图书名为:Visual FoxPro及其应用系统开发,书号为:7-302-03778,作者为:史济民,出版日期为:2000年1月1日,价格为25元,所购册书为15本,出版社为:清华大学出版社。其它字段读者自定。
5.读者“ZouY”于今天通过管理员“LuoHH”借阅了一本“Visual FoxPro及其应用系统开发”图书,使用T-SQL语句向Borrow表中插入该记录,并更改Book表中库存册书信息。
6.在“出版社信息表Publish”中使用SQL语句将出版社“中国水利水电出版社”的联系电话改为“***********”。
7.使用SQL语句将所有读者借书应归还日期向后延长一天。
8.将“清华大学出版社”的图书所购册书和库存册书增加10本。
9.在“用户信息表Urs”中使用SQL语句删除用户帐号为“LiS”的用户信息。
10.删除所有实际归还日期为“2009-04-17”以前且所借图书的名称中含有“数据库”字样的超期罚款记录。
11.删除“出版社信息表Publish”中出版社名称为“机械工业出版社”的元组,讨论该删除操作所受到的约束。
三、实验步骤
在数据库LibraryLib上按下列要求进行数据更新。
12.使用SQL语句向“用户信息表Urs”中插入元组(用户标识:LiS;用户名:1;密码:2;用户名称:李生;性别:男(0);部门:计算系;已借图书:0)。inrt
周杰伦歌曲歌词
into Urs
values('LiS','l','2','李生','0','计算系',null,null,null,'0')
问:本题可以省略into子句中的属性名吗?如果要省略,需要注意什么?
答:可以省略into子句中的属性名,当只指定基本表中的某几列而不是所有列时,必须保证被省略的这些列的其值允许为空值,否则出现错误;
如果省略的列的其值允许为空值,则指定的元组(没有赋值的列的值被自动置为空值)可以插入到数据库中;当插入的是子查询的结果时,
必须保证子查询得到的数值类型与将插入的基本表中对应的数值类型一致。
13.向Publish(出版社信息) 表插入一条新的记录,在该记录中,出版社名为:国防工业出版社,地址为:北京市海淀大街籍海楼,出版社email为:*******************。inrt
into Publish(PublishID,PublishName,PublishAddress,PublishEmail)
values('8','国防工业出版社','北京市海淀大街籍海楼','*******************')
14.对每个出版社,求出所购图书总数和图书总价格,并把结果存入新建表“图书统计Temp_CNTBK”表中。
lect BookPublishID,SUM(BookNum) As TotalBook,SUM(BookNum*BookPrice) as TotalPrice
into Temp_CNTBK
坦然面对from Book
group by BookPublishID
15.在图书信息表中增加图书:图书名为:Visual FoxPro及其应用系统开发,书号为:7-302-03778,作者为:史济民,出版日期为:2000年1月1日,价格为25元,
所购册书为15本,出版社为:清华大学出版社。其它字段读者自定。
inrt
into
Book(BookID,BookName,BookISBN,BookAuthor,BookPublishDate,BookSubject,BookPri ce, BookNum,BookCurNum,BookPublishID,BookClassID )
values (10,'Visual FoxPro及其应用系统开发','7-302-03778','史济民','2000-1-1','很好',25, 15,15,2,2)
16.读者“ZouY”于今天通过管理员“LuoHH”借阅了一本“Visual FoxPro及其应用系统开发”图书,使用T-SQL语句向Borrow表中插入该记录,并更改Book表中库存册书信息。
曲折历程inrt into Borrow
values (1,'ZouY',3,getdate(),getdate()+60,'LuoHH')
update Book
t BookCurNum=BookCurNum-1
where BookName='Visual FoxPro及其应用系统开发'
17.在“出版社信息表Publish”中使用SQL语句将出版社“中国水利水电出版社”的联系电话改为“***********”。
update Publish
tPublishTelephone=************'
where PublishName='中国水利水电出版社'
18.使用SQL语句将所有读者借书应归还日期向后延长一天。
update Borrow
异字组词
t BorrowEndDate=BorrowEndDate-1
19.将“清华大学出版社”的图书所购册书和库存册书增加10本。
update Book
t BookNum=BookNum+10,BookCurNum=BookCurNum+10
where BookPublishID in (lect PublishID
from Publish
where PublishName='清华大学出版社')
20.在“用户信息表Urs”中使用SQL语句删除用户帐号为“LiS”的用户信息。delete from Urs
where UrID='LiS'
21.删除所有实际归还日期为“2009-04-17”以前且所借图书的名称中含有“数据库”字样的超期罚款记录。
delete from ExtraDateFee
where BorrowReturnDate<2009-04-17 and BookID in (lect BookID from Book where BookName='%数据库%')
22.删除“出版社信息表Publish”中出版社名称为“机械工业出版社”的元组,讨论该删除操作所受到的约束。
delete from Publish
where PublishName='机械工业出版社'日记100字左右
当删除了表中元组之后,为保证数据库的完整性约束,DBMS会自动删除该元组与数据库其他表的关联,
此题当删除了publish表中出版社名称为“机械工业出版社”的元组之后,系统会自动删除Book表,ExtraDateFee表中对应元组的信息。
四、实验心得
本次实验的内容围绕用T-SQL语句对数据库进行插入、更新和删除操作,通过此次实验让我们更好的掌握T-SQL的使用,也让我们更加熟悉SQL语言对数据库进行基本的操作。实验中有几个问题值得注意:
1、DBMS在执行插入语句时会检查所插入元组是否破坏表上已定义的完整性规则,包
中秋夜古诗括实体完整性、参照完整性、和用户自定义的完整性。
2、在修改数据时DBMS同样会对数据库的完整性进行检查。
3、DBMS在执行删除语句时,会检查所删除元组是否破坏表上已定义的参照完整性规
则,检查是否不允许删除或是需要级联删除。
实验2.3 视图
一、实验目的
1.熟悉利用企业管理器中的设计工具来创建和管理视图。
2.熟悉SQL语言支持的有关视图的操作,能够熟练使用SQL语句来创建需要的视图,对视图进行查询和取消操作。
二、实验内容
对上述LibraryLib数据库,实现如下要求操作:
1.使用企业管理器创建一个行列子集视图View_Book,给出清华大学出版社的图书的的图书名称、书号、价格、书的页数和购买册书。
2.创建分组视图,将出版社标识及每个出版社的图书的最高价格和最低价格定义为一个视图。
3.创建一个基于题目1所建立视图的视图,定义一个视图,包括清华大学出版社的图书名称,以及购买该图书的总价格。
4.创建一个基于多个基表的视图,该视图由用户帐户、姓名、他在借书的名称组成。(使用两种方式完成)
5.查询用户“ZhangQF”所借图书的名称。创建分组视图,将每个用户及其在借图书总数定义为一个视图。
6.创建一个基于多个基表的视图,该视图由用户帐户、姓名、以及其超期图书名称组成。
7.建立出版社信息的视图View_Publish,要求出版社标识小于100,视图列包括出版社标识,出版社名称和出版社地址。在视图View_Publish中插入元组('101','电子工业出版社','北京市万寿路南口金家村288号'),观察执行结果。然后在该视图定义中加入WITH CHECK OPTION子句,再执行上述元组插入。讨论WITH CHECK OPTION子句对插入操作的影响。
8.删除视图View_Publish。
9.思考与练习。
三、实验步骤
对上述LibraryLib数据库,实现如下要求操作:
10.使用企业管理器创建一个行列子集视图View_Book,给出清华大学出版社的图