




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
数据库系统原理及应用实验指导书〔本科〕软件工程教研室20231月目 录TOC\o“1-1“\h\z\u\l“_TOC_250007“试验一数据定义语言 1\l“_TOC_250006“试验二SQLSever中的单表查询 3\l“_TOC_250005“试验三SQLServe中的连接查询 4\l“_TOC_250004“试验四SQLServe的数据更、视图 5\l“_TOC_250003“试验五数据掌握〔完整性与安全性〕 6\l“_TOC_250002“试验六语法元素与流程掌握 8\l“_TOC_250001“试验七存储过程与用户自定义函数 10\l“_TOC_250000“试验八触发器 11一、试验目的SQLServerSQL语言的DDL语言,在SQLServer环境下承受Transact-SQL除与修改,把握索引的建立与删除方法。SQLServer二、试验内容SQLServer创立数据库:〔请先在D盘下创立DB〕1〕SQLServerStuDB数据库:有一个数据文件:规律名为StuData,文件名为“d:\db\StuDat.mdf”,文件初始5MB,文件的最大大小不受限制,文件的增长率为2MB;有一个日志文件,规律名为StuLog,文件名为“d:\db\StuLog.ldf”,文件初始大小为5MB,文件的最大大小为10MB,文件的增长率为10%2〕刷治理器查看是否创立成功,右击StuDBStuDBSTUDBStuDB设有如下关系表S:S(CLASS,SNO,NAME,SEX,AGE),其中:CLASS为班号,char(5);SNO为座号,char(2);NAME为姓名,char(10),设姓名的取值唯一;SEX为性别,char(2);AGE为年龄,int,表中主码为班号+座号。SQL语句。创立表S;刷治理器查看表是否创立成功;3个记录:insertintos(CLASS,SNO,NAME,SEX,AGE)男”,21),王丽”,”女”,20),(”95131”,”30”,”郑和”,null,null);smallint;向S入学时间〕列,其数据类型为日期型;对表,按年龄降序建索引〔索引名为;Sinxage索引;S表;StuDB)P82页的学生-课程数据库创立STUDENTCOURSE和SC三张表,每一张表都必需有主码约束,合理使用列级完整性约束和表级完整性。并输入相关数据。要作好脚本备份以便后面的试验使用该数据库数据。将StuDB数据库分别,在D盘下创立DB文件夹下找到StuDB进展备份,后面的试验要用到这个数据库。依据《数据库系统概论》(第四版)P745SPJSPJ数据库,并在其中创立S、P、JSPJ束和表级完整性。要作好脚本备份以便后面的试验使用该数据库数据。三、试验要求:学会使用SQLServer依据试验内容认真写好试验报告〔格式见模板,记录每个步骤的脚本。写好试验总结SQLSever中的单表查询一、试验目的:SQL语言的DML子语言,在SQLServer环境下承受Transact-SQLSELECT娴熟把握各种单表查询方法。二、试验内容:StuDBSPJ(二)依据StuDB学生课程数据库及数据实现以下查询:1.查询全部课程的课号,课程名。21岁的全部男生的姓名和诞生年份。查询已被学生所选课程的课程号。查询全部有成绩的学生学号和课程号,并为各列分别取相应的中文别名。SPJ查询供给商名中包含‘方’这个汉字的供给商信息。查询零件名以‘刀’字结尾,包含三个汉字的零件信息。查询使用了供给商S1所供给零件的工程工程数。查询各个供给商所供给的零件的总数,要求对查询结果降序显示。3三、试验要求:依据试验内容认真写好试验报告,记录每个步骤正确的Transact-SQL命令。信息。写好试验总结SQLServe中的连接查询一、 试验目的:把握承受Transact-SQL实现连接查询。把握等值连接〔自然连接、自身连接、外连接和复合条件连接的查询方法。二、 试验内容:依据学生课程数据库studb和SPJ数据库完成以下查询查询使用红色零件的工程名称。查询每个工程的信息及相应的供给信息〔包括列出尚未被供给零件的那些工程。查询供给工程J1红色零件的供给商号SNO,请用两种方法实现。求供给工程J1零件的供给商的完整信息。查询使用北京供给商供给零件的工程信息。385分以上的全部学生。4的课程信息。查询课程与其间接先行课的名称。查询其他系中比计算机科学系全部学生年龄都小的学生完整信息,用两种方法实现。(10)查询其他系中比计算机科学系某一学生年龄大的学生姓名与年龄,用两种方法实现。(11)S1JNOEXISTS谓词的子查询实现。(12)查询使用了全部零件的工程号JNO,用带EXISTS谓词的子查询实现。(13)查询全部使用了P3零件的工程号JNO,用带EXISTS谓词的子查询实现。三、试验要求:写出正确的Transact-SQL命令。息。写好试验小结SQLServe的数据更、视图一、试验目的:把握承受Transact-SQL实现嵌套查询。把握承受Transact-SQL实现数据更。把握承受Transact-SQL实现视图的定义、删除、查询与更。二、试验内容依据学生课程数据库studb和SPJ数据库完成以下操作:〔一〕数据更1)插入一个学生:张红,女,202315135,信息系,20岁2)插入一个选课录:202315135,1,成绩未定1岁202315130学生的选课记录删除全部姓张的同学的信息请自行设计案例对学生-课程数据库的数据更,并观看是否有违反数据的完整性约束。〔二〕视图创立一个学生成绩统计视图,包括学号,姓名,选课门数,平均分,最高分,最低分利用上题所建视图实现:①查询成绩高于自己平均成绩的选课记录②查询每个同学获得最高分的选课记录请为三建工程工程建立一个供给状况的视图〔SNPNO、供给数量QT。针对该视图完成以下查询:①找出三建工程工程使用的各种零件代码及其数量;②找出供给商S1的供给状况;三、试验要求写出正确的Transact-SQL命令。无须记录正确的查询结果。但要求记录试验过程中发生的有学习意义的错误及错误信息。写好试验小结〔完整性与安全性〕一、试验目的:通过试验加深对数据库完整性与数据库安全性的理解;SQLServer对数据进展安全性掌握的方法二、试验内容和要求(一)数据库完整性某公司使用数据库进展内部治理:表Employees存储雇员的代号〔整型,标识位,种子1000001,增量为1,主键、身份证号码〔18个字符、名字〔最长20个字符〕和工资等信Departments〔2、部门名称〔30〕等信息;表Work请写出创立这三个表的SQL语句,要保证:工资的值大于0,身份证号码唯一,开头工作时间非空,默认值为当前时间。(二)以sa登录查询分析器,输入以下代码并执行第1行exec sp_addlogin ”s1”,”123”2行useStuDB3行execsp_grantdbaccess”s1”,”u1”4行grantselect,insert,updateonstudenttopublic5行grantallonstudenttou1第6行revokeselect onstudenttou1问:1行创立了一个名为s1登录帐户,请问”123”的含义是什么?3行将登录帐户s1映射到数据库用户u1上,它将作为哪个数据库的用户?46行的含义在查询分析器中以s1帐户连接效劳器,能否对学生-课程数据库的student表进展select操作,为什么?〔权限。因此,假设废除用户查看表的权限,不肯定能防止用户查看该表,由于已将查看该表的权限授予了用户所属的角色〕5)切换回sa用户的查询窗口,输入下面代码并执行denyselectonstudenttou1请问该代码含义?再切换至s1的查询窗口,能不能对student表进展查询操作?为什么?(三)请完成以下操作,并记录完整语句。在试验过程留意验证语句的执行效果。SQLServerSQLServer12给该登录用户映射到数据库用户user2上,并赐予该用户对student表的sno、sname两列的查询权限,对sc表的全部操作权限及对course的查询权限。〔请先执行revokeselectonstudentfrompublicRevokeallonscfrompublic注:建用户自动被参加到public角色中〕请分析、验证数据库用户user2的权限。user2授予对course表的插入操作权限,并允许将此权限授予其它用户(5)收回授予user2sc表的全部权限创立一个角色R1然后使用GRANT语句,使角色R1拥有SC表的SELECT、UPDATE、INSERT(8)将这个角色授予user2。使它具有角色R1所包含的全部权限。三、试验要求:写出正确的Transact-SQL命令。息。试验小结一、试验目的:把握Transact-SQL局部变量的声明、赋值和使用方法以及全局变量的运用方法,把握Transact-SQL的局部变量的作用域概念。把握Transact-SQL的掌握流语言的使用方法。把握与掌握流语言语句一起使用的其它Transact-SQL语句:CASE、/*...*/〔注释、--〔注释、PRINT。二、试验内容和要求1、使用局部变量、全局变量定义一个int45,并显示变量的值。20的可变长度型字符变量,为其赋值“FJUT”,并显示变量的值。在批处理中声明两个局部变量@ssex和@sdeptStudent求两局部变量在SELECT语句的WHERE在系为‘IS’系的那些学生。查询当前数据库效劳器名。查询当前数据库治理系统版本。student1岁语句,并用@@ROWCOUNT来检测是否有发生更改的行。2.函数的使用数学函数的使用分别用函数求出-3确实定值,16的平方根,5的三次方。字符串函数的使用1〕分别将字符串”china”、”MACHINE”转换成大写、小写字母;2〕去掉字符串” machine ”左边的空格,右边与”press”连接起来;日期、时间函数的使用1〕返回系统当前日期并以整数形式返回当前日期的年份、月份、日;2〕返回给定日期“2023-2-21”与当前日期相差的天数。系统函数与元数据函数的使用显示正在使用的用户名3.编写较简单的Transact-SQL程序在SELECT语句中,CASE搜寻函数允许依据比较值在结果集内对值进展替换。sc〔grade列显示为文本注释。〔60分,文本注释为“不及格6707-880-99-10。Transact-SQL1~1007整除的数的总和。自选实例,实践并把握Transact-SQL以下掌握流语言的使用方法:BEGIN...END、WHILE、BREAK、CONTINUE、IF...ELSE、WAITFOR自选实例,实践并把握以下Transact-SQL语句:/*...*/〔注释、--〔注释、PRINT三、试验要求:写出正确的Transact-SQL命令。息。报告书写内容:内容1的脚本及〔〕的结果;内容2的脚本及结果;内容〔〔〕脚本。3〕试验小结一、试验目的:SQLServer中存储过程的使用方法。SQLServer中用户自定义函数的使用方法。二、试验内容和要求(一)存储过程12个存储过程,分别完成下面功能:统计某一门课的成绩分布状况,即依据各分数段统计人数,要求使用游标。将学生选课成绩从百分制改为等级制〔即A、B、C、D、E五级。2、对SPJ数据库,1〕创立一个存储过程ins_s_count等信息,往S表中插入数据,并返回插入该记录之后,S表中的记录数。〕调用该存储过程实现往SS天盛40,并显示插入该记录之后,S表中的记录数。(二)用户自定义函数创立一个返回标量值的用户定义函数RectangleArea:输入矩形的长和宽就能计算矩形的面积。调用该函数。门课程的课程号、课程名、选修人数、本门最高分、最低分和平均分。调用这个函数,生成相应的报表并给用户扫瞄。三、试验报告书写要求试验内容的脚本。写好试验小结一、试验目的SQLServer中触发器的使用方法。试验内容依据《数据库系统概论》的SPJ关系模式实现以下操作:1、创立一个作用在P表上的的触发器P_Ins,确保用户在插入或更数据时所供给的WEIGHT值是大于0的,否则给出错误提示并回滚此操作。请测试该触发器。测试方法自定。2JJ_Update,制止同时修改工程的名称和所在城市,并进展相应的错误提示。请测试该触发器。测试方法
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 谷雨季节生态探秘
- 【初中语文】第11课《山地回忆》课件-2024-2025学年统编版语文七年级下册
- 脑卒中临床表现小讲课
- 环保知识与实践竞赛
- 员工团结力量培训课件
- 肺部感染患者护理评估
- 借款债权转让合同范例
- 代办工作费用合同范本
- 2025年触变剂项目合作计划书
- 幼儿园6S管理全套
- 【精益生产在机械制造企业中的应用研究(论文)】
- 药品质量管理体系文件目录
- 安徽涵丰科技有限公司年产6000吨磷酸酯阻燃剂DOPO、4800吨磷酸酯阻燃剂DOPO衍生品、12000吨副产品盐酸、38000吨聚合氯化铝、20000吨固化剂项目环境影响报告书
- GA/T 492-2004城市警用地理信息图形符号
- 化妆品生产许可申请表样板
- 老年综合评估和老年综合征课件
- 2023年西安铁路职业技术学院单招综合素质考试笔试题库及答案解析
- (新版)网络攻防知识考试题库(含答案)
- 人员技能矩阵图
- 教育评价学全套ppt课件完整版教学教程
- JJG 1063-2010 电液伺服万能试验机-(高清现行)
评论
0/150
提交评论