《实验四 视图与数据控制实验.doc》由会员分享,可在线阅读,更多相关《实验四 视图与数据控制实验.doc(2页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。
1、实验四 视图与数据控制实验一、实验目的1、掌握SQL Server查询分析器的使用方法,加深对SQL查询语句的理解。2、掌握用查询分析器和视图创建向导的方法创建视图。3、学会使用SQL数据控制语句来进行授权控制和权限回收。二、实验环境与实验准备工作实验环境:Microsoft Windows xp操作系统,Microsoft SQL Server 2000数据库管理系统标准版或企业版。实验准备工作:在开始本实验之前,请回顾教科书的相关内容(如视图的定义与使用,数据访问授权与权限的回收。三、实验内容基于实验一建立的“图书读者数据库”(Book_Reader_DB)和实验二输入的部分虚拟数据,在S
2、QL Server 2000查询分析器的Transact-SQL语句输入区输入Transact-SQL语句,然后点击“查询”菜单中的“执行”菜单项(或用F5快捷键),执行输入区的Transact-SQL语句。具体实验内容如下:1、视图定义与查询实验 在“图书读者数据库”(Book_Reader_DB)中,先用视图创建向导的方法创建视图View1和View2。其中View1包括书号、书名、定价、数量等属性。View2包括读者号、读者姓名、单位、电话、书号、书名、借阅日期、应归还日期、实际还书日期和过期天数等属性,其条件是所有借书已过期的读者和借书情况(假定借阅期为60天);create view
3、 view1(bno,bname,bprice,bnum) as select bno,bname,bprice,bnum from book;create view view2(rno,rname,runitt,bno,lendingtime,breturn,rrealdate,rreturntime) as select borrow.rno,rname,runit,borrow.bno,lendingtime,dateadd(mm,2,lendingtime) ,lendingtime,datediff(dd,breturn,dateadd(mm,2,lendingtime) fromb
4、ook,reader,borrow where book.bno=borrow.bno and borrow.rno=reader.rno; 根据上述定义的视图,在查询分析器中用语句完成如下查询:A:通过视图View1查询书库中藏书的情况;select bno,bname,bnum from view1;B:通过视图View2查询借书过期的读者和借书情况及罚款金额(假定超期罚款标准为1元/天);select rno ,rname,bno,breturn*1 from view2 在查询分析器中用SQL语句来创建视图View3和视图View4,视图View3的要求与View1相同,视图View4
5、与视图View2的条件相同。create view view3 as select * from view1;create view view4 as select *from view2;2、数据控制实验 假定系统有U1、U2、U3 、U4、U5、U6六个登录用户,试将查询图书表的权限由管理员授权给U1, 以U1用户的身份重新登录系统后,再把权限授予给U2;Grant select on book to U1grant select on book to U2;revoke select on book from U1; 系统管理员把插入数据给借阅表的权限授予给U3;grant insert on borrow to U3 with grant option 系统管理员把添加图书数据的权限授予给U4;grant alter on book to U4 系统管理员把修改读者数据信息的权限授予给U5;grant update on reader to U5; 将U1访问图书表的权限收回;revoke select on book from U1上述为详细实验步骤和结果。