




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、数据库实验报告班级:07111103学号:1120111857姓名:曹睿鹏实验一:实验内容1 创建和修改数据库分别使用SQL Server Management Studio和Transact-SQL语句,按下列要求创建和修改用户数据库。1. 创建一个数据库,要求如下:(1) 数据库名testDB。(2) 数据库中包含一个数据文件,逻辑文件名为 testDB_data,磁盘文件名为testDB_data.mdf,文件初始容量为5MB,最大容量为15MB,文件容量递增值为1MB。(3) 事务日志文件,逻辑文件名为TestDB_log, 磁盘文件名为TestDB_log.ldf,文件 初始容量为5
2、MB, 最大容量为10MB,文件容量递增值为1MB。2. 对该数据库做如下修改:(1) 添加一个数据文件,逻辑文件名为TestDB2_data,实际文件为TestDB2_data.ndf,文件初始容量为1MB,最大容量为6MB,文件容量递增值为1MB。(2) 将日志文件的最大容量增加为15MB,递增值改为2MB。方法一:使用SQL Server Management Studio创建和修改数据库TestDB方法二:使用Transact-SQL语句创建和修改数据库TestDB方法一过于简单,暂不做讨论。下面学习方法二。首先,在sql sever 2008中单击新建查询。然后键入下面的代码。建立新
3、的数据库。1. 创建一个数据库,要求如下:2.对该数据库做如下修改:对刚刚的操作进行验证数据均已更新完毕。实验内容2 数据表的创建、修改和查询1. 熟悉有关数据表的创建和修改等工作,并了解主键、外键以及约束的创建和应用,熟练掌握使用SQL Server Management Studio和CREATE TABLE、ALTER TABLE等Transact-SQL语句对数据表的操作方法项目表(Project)字段名数据类型字段长度注释项目编码char10主键名称varchar负责人编码char10客户int开始日期datetime结束日期datetime员工数据表(Employee)字段名数据类
4、型字段长度注释员工编码char10主键姓名varchar性别varchar所属部门varchar工资money方法一:使用SQL Server Management Studio创建数据表并添加约束方法二:使用Transact-SQL语句创建数据表并添加约束2. 向数据库TestDB中的两个数据表项目数据表和员工数据表中添加记录3. 在查询分析器中书写Transact-SQL语句完成数据查询。(1) 查询项目数据表中客户字段的唯一值,并查看查询结果。(2) 查询工资高于2000的项目部的人员的姓名。(3) 查询来自CCH公司的项目名称(以CCH开始)和负责人姓名(4) 查询每个部门的平均工资,
5、结果按照平均工资的多少排序(5) 查询所有的员工姓名和负责人的项目名称(6) 使用子查询输出所有负责 CCH公司项目(以CCH开始)的员工姓名,以及没有负责REALIDEA公司(以REALIDEA开始)项目的员工姓名(7) 将所有REALIDEA公司的项目的结束日期更改为2011年1月8日(8) 录入部的张晓峰决定辞职,请将员工数据库中有关他的记录删除,并将他负责的项目移交给杨亭亭。书写语句对数据表做相应的更改4. 掌握使用T -SQL语句创建视图的方法,包括视图的建立、删除、修改;了解如何应用视图有选择地查看所需数据,并熟悉通过视图更改数据表中数据的方法。(1) 基于表项目数据表和员工数据表
6、创建视图,要求为: 视图名为员工项目。 包含字段编号、姓名、名称和开始日期。 字段别名分别是员工编号、”员工姓名、项目名称、项目开始日期。(2) 使用INSERT语句通过视图向员工数据表中添加一条记录,要求姓名字段值为马中兴。(3) 建立适当的视图,将所有的表连接起来,观察数据,体会建立多个表的好处下面演示建立表的过程:1.首先运行涂蓝代码,建立员工数据表,并设立主键。因为在项目数据表中需要添加员工数据表的主键为外键。二.建立项目数据表:然后向两表中添加元素。注:在这里有血的教训,没有给varchar限定值的范围导致数据录入不了。好悲惨,又推到重写的一遍。下面是建好的表:员工数据表项目数据表三
7、、1.查询项目数据表中客户字段的唯一值,并查看查询结果。2.查询工资高于2000的项目部的人员的姓名。3. 查询来自CCH公司的项目名称(以CCH开始)和负责人姓名4.查询每个部门的平均工资,结果按照平均工资的多少排序5.查询所有的员工姓名和负责人的项目名称6. 使用子查询输出所有负责 CCH公司项目(以CCH开始)的员工姓名,以及没有负责REALIDEA公司(以REALIDEA开始)项目的员工姓名*由于编造数据的疏忽,没有加入REALIDEA公司,这时希望改为以KK开头的公司的项目注意到这张表中没有了负责KKK项目的王一飞这个人,现在表有9个元素,原表有10个元素。7.将所有REALIDEA
8、公司的项目的结束日期更改为2011年1月8日先建立试图,然后在视图上操作,经验证结果完全正确(下图第二行)练习一下视图的建立,哈哈8.录入部的张晓峰决定辞职,请将员工数据库中有关他的记录删除,并将他负责的项目移交给杨亭亭。书写语句对数据表做相应的更改/*录入部的张晓峰决定辞职,请将员工数据库中有关他的记录删除,并将他负责的项目移交给杨亭亭。书写语句对数据表做相应的更改*/ UPDATE 项目数据表 SET 负责人编码 = (SELECT 员工编码FROM 员工数据表WHERE 姓名=刘楠 ) WHERE 负责人编码 IN (SELECT 员工数据表.员工编码FROM 员工数据表WHERE 员工
9、数据表.姓名=刘哲 ) 消息2627,级别14,状态1,第1 行违反了PRIMARY KEY 约束表一约束。不能在对象dbo.项目数据表 中插入重复键。语句已终止。DELETE FROM 员工数据表 WHERE 姓名=刘哲消息547,级别16,状态0,第1 行DELETE 语句与REFERENCE 约束表一约束冲突。该冲突发生于数据库testDB,表dbo.项目数据表, column 负责人编码。语句已终止。由于设定主键时将员工编码和负责人编码均为主键,且员工编码为负责人编码的外键,导致要想修改负责人编码只能先删除于是不能完成这一操作。四、掌握使用T -SQL语句创建视图的方法,包括视图的建立
10、、删除、修改;了解如何应用视图有选择地查看所需数据,并熟悉通过视图更改数据表中数据的方法。1.基于表项目数据表和员工数据表创建视图,要求为: 视图名为员工项目。 包含字段编号、姓名、名称和开始日期。 字段别名分别是员工编号、”员工姓名、项目名称、项目开始日期。下面打开视图界面2.使用INSERT语句通过视图向员工数据表中添加一条记录,要求姓名字段值为马中兴。以下是查看图3.建立适当的视图,将所有的表连接起来,观察数据,体会建立多个表的好处下面是效果图:实验内容3创建触发器和存储过程理解触发器的触发过程和类型,掌握创建触发器的方法。1. 创建触发器,将插入员工的工资额限制在 5000以内。2.
11、创建触发器,将员工工资修改变动额限制在2000以内。3. 删除员工数据表数据时,判断该员工是否有负责的项目,如果有,则不允许删除、并给出提示“将负责项目移交后再删除”的提示信息。4. 在视图基础上创建instead of 触发器,实现通过视图修改数据的功能,具体题目自拟。5. 创建存储过程,要求返回某一特定部门所有员工的工资总和,其中特定部门的名称以存储过程的输入参数进行传递。6. 创建函数,题目自拟。7. 创建带有游标的存储过程,题目自拟。解答:1. 创建触发器,将插入员工的工资额限制在 5000以内。说明已经创建了触发器第一条说明正常的插入语句是可以的第二条说明当工资大于5000时不可以被
12、插入。2.创建触发器,将员工工资修改变动额限制在2000以内。以下是验证:3.删除员工数据表数据时,判断该员工是否有负责的项目,如果有,则不允许删除、并给出提示“将负责项目移交后再删除”的提示信息。USE testDBGOdelete FROM 员工数据表WHERE 姓名=赵玉琼出现如下语句:消息547,级别16,状态0,第1 行DELETE 语句与REFERENCE 约束表一约束冲突。该冲突发生于数据库testDB,表dbo.项目数据表, column 负责人编码。语句已终止。由于在建表时的疏忽,故导致无法执行删除操作,望老师原谅啊。但触发器建立正确(:4.在视图基础上创建instead o
13、f 触发器,实现通过视图修改数据的功能,具体题目自拟。5.创建存储过程,要求返回某一特定部门所有员工的工资总和,其中特定部门的名称以存储过程的输入参数进行传递。这时发现并没有输出钱数,回去寻找原因,发现时 总工资 后没加OUTPUT这时输出了正确的结果。6. 计算制员工工资是否高于所在部门的工资平均值下面是函数测试结果:实验内容4备份、恢复数据库及安全控制理解数据库备份的过程和属性设置,掌握使用SQL Server Management Studio备份数据库的方法。1. 使用SQL Server Management Studio备份和恢复数据库.2. 创建新用户、新用户授予权限、用户权限回收.1.使用SQL Server Management Studio备份和恢复数据库. 关闭数据库再次
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 仙桃一中研学活动方案
- 代发业务活动方案
- 代理销售活动方案
- 以诚待人活动方案
- 仲夏冰淇淋活动方案
- 仿生鱼机构活动方案
- QBT-食盐用水质量控制技术规范稿编制说明
- 企业三八节室内活动方案
- 企业人才活动方案
- 企业全年职工活动方案
- 管理人员信息表-模板
- 十八岁成人礼模板课件
- 2020人教部编版四年级下册语文全册单元知识要点考点汇编(期末总复习课件)
- 单层钢结构厂房施工组织设计方案
- (新版)供电可靠性理论考试题库大全-下(填空题)
- 村项目验收表(村级验收)
- ECMO技术参数要求
- 城市轨道交通供电技术442页完整版教学课件汇总全书电子教案
- 高填深挖路基稳定性监控观测方案
- 安全标准化现场评审所需资料清单(共14页)
- 链家房屋买卖合同范本(共10篇)
评论
0/150
提交评论