实验四数据库更新,视图和数据控制.doc

实验四数据库更新,视图和数据控制.doc

ID:55704558

大小:1.55 MB

页数:35页

时间:2020-05-25

实验四数据库更新,视图和数据控制.doc_第1页
实验四数据库更新,视图和数据控制.doc_第2页
实验四数据库更新,视图和数据控制.doc_第3页
实验四数据库更新,视图和数据控制.doc_第4页
实验四数据库更新,视图和数据控制.doc_第5页
资源描述:

《实验四数据库更新,视图和数据控制.doc》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、嘉应学院计算机学院一、实验目的通过实验掌握数据库更新的方法和完整性约束的概念以及视图建立和操作方法。掌握SQLSERVER的数据控制和安全性设计的基本方法,存储过程的建立和使用方法。二、实验原理1、插入数据INSERTINTO<表名〉[<属性列1〉[,<属性列2〉...)]VALUES(<常量1>[,<常量2>]...)2、修改数据UPDATE<表名>SET<列名〉=<表达式〉[,<列名〉=<表达式〉]...[WHERE<条件〉]3.删除数据DELETEFROM<表名>[WHERE<条件>4.建立视图CREATEVIEW<视图名〉[(列名〉[,(列名〉]...AS<子查询〉[WITHC

2、HECKOPTION]5.授权GRANT<权限>[,<权限>]...ON<对象类型〉<对象名>]TO<用户>[,<用户>]...[WITHGRANTOPTION]三、实验环境操作系统:WindowsServer2003、Windows7编译环境:SQLServerEnterpriseManager数据库管理系统:MicrosoftSQLServer2005四、实验步骤及内容(一)数据库更新1.在school数据库中,确保表之间已经建立关系,用企业管理器建立数据库的Diagrams2.在course表中删除cno=1的记录,有什么结果?未删除前course表的内容如下:执行删除操作后,结

3、果如下:3.在Diagrams中编辑course表和sc表之间的关系,选择cascadedeleterelatedrecords执行级联删除操作前,三个表之间的关系如图:在SC表中的属性关系里选择级联删除相关记录,如图:再查看三表之间的关系:重复2的操作,观察course表和sc表的变化,有什么结果,为什么?可观察到:Course表与sc表中的cno=‘1’的记录都删除了。因为选择在sc表属性中设置了级联删除这个选项。并且删除了course表和sc表之间的联系4.将course表和sc表的课程号为2的都改为22,如何做?(提示:在Diagrams中编辑course表和sc表之间的关系,

4、选择cascadeupdaterelatedfields)观察并记录结果。建立course表和sc表的关系,并选择级联更新相关的字段执行update语句,并查看:5.在SC表中,(1)将95002同学的成绩都减少10%执行操作前,sc表的内容如下:执行update操作后,如图:(2)课程号为3的改为33,都有什么结果?为什么?执行update操作后,结果如下:分析:UPDATE语句与FOREIGNKEY约束"fk_cno"冲突。该冲突发生于数据库"school",表"dbo.Course",column'Cno'。语句已终止。由于产生冲突,所以不允许执行该更新操作6.(1)在STUDE

5、NT表中插入一条新纪录:95006李三男21IS执行insert操作:查看student表是否正确插入了相应的数据:(2)在SC表中插入一条新纪录:95008380都有什么结果?为什么?如何完成上述操作?执行insert操作,结果如下:分析原因:原因在于修改sc表中的一个元组,修改后该元组的cno属性的值在course表中找不到一个元组,其cno属性的值与之相等,故拒绝执行此操作。修改要完成上面的操作,先修改student表与sc表之间的关系:然后再执行插入,并查看sc表是否正确插入相应的信息:分析:在Diagrams中编辑student表和sc表之间的关系,强制外键约束选择否(二)建

6、立新用户和数据控制管理1.企业管理器-->security-->logins建立两个新用户:用户名stu1,密码stu1和用户名stu2,密码stu2defaultdatabase为schooldatabaseaccess选择school2.企业管理器-->database-->school-->property观察结果3.SQLQueryAnalyzer-->用超级用户登录建立存储过程sp1建立存储过程sp24.企业管理器-->database-->school-->storedprocedure观察结果SQLQueryAnalyzer-->用超级用户登录,执行存储过程sp1,sp2

7、execsp1execsp2查看sp1sp2存储过程:企业管理器-->database-->school-->property-->permission观察结果企业管理器-->database-->school-->student,course和SC-->property-->permission观察结果5.检验一:(1)在命令行用stu1用户登录(2)在SQLQueryAnalyzer-->file-->connect以stu2用户登录用st

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。