数据库-实验二_第1页
数据库-实验二_第2页
数据库-实验二_第3页
数据库-实验二_第4页
数据库-实验二_第5页
已阅读5页,还剩16页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

精选文档 供参考 实实 验验 报报 告告 册册 2014 2015 学年 第 2 学期 系 别 计算机科学与技术系 实验课程 数据库原理 专 业 计算机科学与技术 班 级 姓 名 学 号 指导教师 精选文档 供参考 实验二实验二 SQLSQL 语句语句 一 实验目的 1 熟悉 SQL 的数据查询语言 能使用 SQL 进行单表查询 连接查询 嵌套查询 集合查询 和统计查询 能理解空值的处理 2 熟悉数据库的数据更新操作 能使用 SQL 语句对数据库进行数据的插入 更新 删除操 作 3 熟悉 SQL 支持的有关视图的操作 能创建 查询及取消视图 4 了解 NULL 在数据库中的特殊含义 掌握使用 SQL 进行与空值相关的操作 二 实验预习内容 在认真阅读教材及实验指导书 实验1 2 数据查询 实验1 3 数据更新 实验1 4 视图 和 实验1 6 空值和空集的处理 的基础上 上机前请预习以下内容 并在空白处填 写相应的步骤或命令 1 使用 SCHOOL 数据库 在 SQL SERVER 2000 的查询分析器查询分析器中使用使用 SQL 语言语言完成以下 操作 请在空白处填写相应的 SQL 命令 1 查询年级为 2001 的所有学生的名称 按编号顺序排列 2 查询所有课程名称中含有 data 的课程编号 精选文档 供参考 3 统计所有老师的平均工资 4 查询至少选了 3 门课的学生编号 精选文档 供参考 5 查询学号为 80009026 的学生的姓名 所选课名及成绩 6 查询没有学生选的课程编号 7 查询既选了 C 又选了 Java 课程的学生编号 精选文档 供参考 8 查询选了 C 但没选 Java 课程的学生编号 9 向 STUDENTS 表中插入 LiMing 的个人信息 编号 700045678 名字 LiMing Email LX 年级 1992 10 将 LiMing 的年级改为 2002 精选文档 供参考 11 删除所有选了 Java 课程的学生选课记录 12 求出每门课的课程号 选课人数 结果存入数据库表 T1 中 13 查询所有选课记录的成绩并换算为五分制 注意 NULL 的情况 精选文档 供参考 14 查询成绩小于 0 的选课记录 统计总数 平均分 最大值和最小值 注意查询 结果中 NULL 的情况 15 按成绩顺序排序显示 CHOICES 表中所有记录 使用 ORDER BY 排序 注意 NULL 的情况 16 创建视图 V1 显示学生姓名 所选课名称 任课教师名 精选文档 供参考 17 取消 V1 视图 2 使用 STC 数据库 在 SQL SERVER 2000 的查询分析器查询分析器中使用使用 SQL 语言语言完成以下操作 请在空白处填写相应的 SQL 命令或其它内容 1 创建视图 V2 显示计算机 CS 系学生信息 结合下面的 b 小题 V2 视图创建 2 次 分别使用 不使用 WITH CHECK OPTION 选项 1 不加 WITH CHECK OPTION 2 加 WITH CHECK OPTION create view V2 as select from students where sdept cs create view V2 as select from students where sdept cs with check option 精选文档 供参考 2 插入元组 99999 张三 20 岁 男 PH 到 V2 中 运行结果如何 观察 WITH CHECK OPTION 对结果的影响 1 不加 WITH CHECK OPTION 的结 果 2 加 WITH CHECK OPTION 的结果 insert into V2 value 99999 张三 20 男 PH 不加with check option时 命令执行 成功 加了这个后 在执行命令 会出现错 误 原因是目标视图或者目标视图所 跨越的某一视图指定了 with check option 而该操作的一个或多个结果 行又不符合 check option 约束的条件 3 在 V2 基础上 查询所有计算机系女生信息 select from V2 where ssex 女 3 结束本次实验 三 实验课后训练 1 掌握 SQL SERVER 中流控制语句及其它常用编程语句 1 使用查询分析器 编写代码 输出乘法口诀表 2 自行练习实验指导书 P24 实验 1 2 数据查询 1 2 5 自我实践部分 3 自行练习实验指导书 P30 实验 1 3 数据更新 1 3 5 自我实践部分 4 自行练习实验指导书 P36 实验 1 4 视图 1 4 5 自我实践部分 5 自行练习实验指导书 P49 实验 1 6 空值和空集的处理 1 6 5 自我实践部分 精选文档 供参考 四 实验报告 1 SQL SERVER 中变量声明的命令是什么 输出命令是什么 变量声明 局部变量需要声明 declare 变量名 空格 数据类型 声明变量 全 局变量不需要声明 输出命令 select 查询命令 2 SQL SERVER 中实现分支和循环的语句分别是什么 分支 用 case 测试表达式 when 测试值 1 then 结果表达式 1 when 测试值 2 then 结果表达式 2 else 结果表达式 n 1 end 循环 用 while 布尔表达式 begin 语句序列 1 break 语句序列 2 continue 语句序列 3 end 3 在 SQL SERVER 里使用 ORDER BY 排序时 NULL 值如何处理 使用 GROUP BY 分组 时 NULL 值又如何处理的 null 默认为最大值 即 asc 升序大 null 值排在最后 desc 降序小 null 值排在最前面 4 实验总结 实验过程中出现的问题 解决方法 结果如何或其它 有些较为复杂的嵌套查询 刚开始不知道如何写 然后问同学 理清了思路 并完成了 编程 在这次实验中 有好多因为中英字符问题而出现的命令错误 进行更改后就可以正常执 行命令了 精选文档 供参考 实验三实验三 数据库完整性与安全性数据库完整性与安全性 一 实验目的 1 理解实体完整性 参照完整性 用户自定义完整性的概念 学习三类完整性的实现 了 解违反完整性的结果 2 掌握 MS SQL SERVER 中的有关用户登录认证及管理方法 熟练使用自主存取控制进行权 限管理 二 实验预习内容 在认真阅读教材及实验指导书 2 1 实体完整性 2 2 参照完整性 2 3 用户自定 义完整性 2 4 触发器 2 5 综合案例 和 3 1 用户标识与鉴别 3 2 自主存取控制 3 3 视图机制在自主存取控制上的应用 3 4 Public角色在安全性中的应用 3 8 综 合案例 的基础上 上机前请预习以下内容 并在空白处填写相应的步骤或命令上机前请预习以下内容 并在空白处填写相应的步骤或命令 1 使用 SCHOOL 数据库 1 创建一张新表 CLASS 包括 Class id varchar 4 Name varchar 10 Department varchar 20 三个属性列 其中 Class id 为主码 2 执行两次相同的插入操作 0001 01csc cs 结果如何 2 使用 SQL 命令创建一张学生互助表 要求 包括学生编号 学生姓名 学生帮助对象的 编号 每个学生有且仅有一个帮助对象 帮助的对象必须是已存在的学生 精选文档 供参考 3 使用 STC 数据库 修改设置修改设置 完成以下 2 种不同的要求 请写出对应的语句或简述操作 过程 1 当更新 删除 STU 表中记录时 若 SC 表中有此学生的记录 则拒绝 2 当更新 删除 STU 表中记录时 若 SC 表中有此学生的记录 则自动更新或删除 4 使用 SQL 命令完成以下任务 1 创建 Worker 表 表结构见指导书 P73 2 定义约束 U1 U2 其中 U1 规定 Name 字段取值唯一 U2 规定 sage 字段上限是 28 3 插入一条合法记录 4 插入一条违反 U2 约束的记录 简述观察到的结果如何 并分析原因 精选文档 供参考 5 去除 U1 约束 6 修改约束 U2 令 sage 的值大于等于 0 7 创建规则 rule sex 规定更新或插入的值只能是 M 或 F 并绑定到 Worker 的 sex 字 段 8 插入 2 条记录 一条满足规则 rule sex 一条违反规则 观察结果 5 使用查询分析器创建触发器并测试 请写出相应的语句 1 为 Worker 表创建触发器 T1 当插入或更新表中数据时 保证所操作记录的 sage 大 于 0 2 为 Worker 表创建触发器 T2 禁止删除编号为 00001 的记录 精选文档 供参考 3 为 Worker 表创建触发器 T3 要求更新一个记录时 表中记录的 sage 要比老记录的 sage 的值大 6 分别用企业管理器和查询分析器实现用户的标识并测试 请写出相应的操作过程或对应 的语句 1 设置 SQL SERVER 的安全认证模式 2 建立名为 LiYong 的登录用户 数据库用户 默认访问 SCHOOL 数据库 密码为 abcd 3 取消 LiYong 用户 7 先以 sa 帐号登录 要实现如下表的权限管理 请按先后顺序写出相应的 SQL 语句 假 假 设所有用户尚未定义 其密码均为设所有用户尚未定义 其密码均为123 并加以必要的说明 编号授权用户名被授权用户名数据库对象名允许的操作类型能否转授权 1SAU1StudentsSELECT不能 2SAU2StudentsALL不能 3SAPUBLICChoicesSELECT不能 4SAU3StudentsSELECT能 5U3U4Students SELECT 能 6U4 U5Students SELECT 不能 7SAU6ChoicesINSERT能 8SAU7Students sname UPDATE 不能 精选文档 供参考 精选文档 供参考 8 创建在 SCHOOL 数据库中 choices 上的视图 CS View 授权给计算机系讲授课程号为 10010 的数据库用户 LiYong 让其具有视图上的 SELECT 权限 9 对视图 CS View 上的 score 属性列的 UPDATE 权限授予用户 LiYong 可以修改学生 成绩 但不能修改其它属性列的值 10 假设 SCHOOL 数据库中 每个学生的登录名都为自己在 STUDENTS 表中的 sid 实现 每个学生只能查询自己选课信息 不能查询别人的成绩 也不能修改自己的成绩 11 结束本次实验 三 实验课后训练 1 自行练习实验指导书 P81 实验 2 5 综合案例 综合案例 1 2 自行练习实验指导书 P122 实验 3 8 综合案例 综合案例 精选文档 供参考 四 实验报告 1 授权给 public 与授权给指定用户有什么区别 实际应用中 哪个更安全些 2 SQL SERVER 中的角色有什么作用 3 实验总结 实验过程中出现的问题 解决方法 结果如何或其它 精选文档 供参考 实验四实验四 数据库编程数据库编程 一 实验目的 1 掌握 ODBC 的配置 2 能编写简单的存储过程和函数 并调用 二 实验预习内容 上机前请预习以下内容 并在空白处填写相应的步骤或命令 1 配置 ODBC 使用 VFP 中的表单 查询 SCHOOL 数据库中 STUDENTS 表中所有记录 2 编写存储过程并调用 请写出相应命令 1 在查询分析器中 编写存储过程 usp get stuinfo 使用一个名为 xm 能够传送进存储 过程的参数 允许以学生的姓名查询该生的基本信息 2 在查询分析器中调用存储过程查询 赵飞 同学的基本信息的语句 3 编写函数并调用 请写出相应命令 1 在查询分析器中 定义内联表值函数 Fun 用于返回各职称的教师基本信息 精选文档 供参考 2 在查询分析器中 使用 Fun 进行选择以获得 教授 职称的教师基本信息 3 在查询分析器中 编写标量函数 Func 用于返回两个整数中的最大值 4 在查询分析器中 调用此函数 输出两个数中的最大值 5 在 SQL SERVER 中定义函数 FUNS 返回指定参数的平方 配置好 ODBC 后 在 VFP 中调用 FUNS 并输出结果 4 结束本次实验 三 实验课后训练 1 自行学习实验指导书 P13

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论