乐山师范学院数据库编程期末答疑,卷子讲解,SQL server相关 如下是一个简化的员工考勤应用E-R图,请在SQL Server中创建名为YQKG的数据库,包括两个数据文件,一个日志文件,文件名按SQL Server对象命名规范定义,数据文件按10%的比例增长,数据库定义完成后输入如下样本数据。完成后请将新定义的对象及数据生成到脚本文件3_1.sql,并分离数据库。(数据表标识说明:BMXX 部门信息,QQLX 考勤类型, JBXX 基本信息,各字段定义请根据实际语义自行定义)。 2. 运行CreateTeaching.sql在系统数据库tempdb中生成解答用数据库对象,完成如下安全定义。每小题2分,共6分。 (1) 创建名为L+考生学号的登录名,密码为考生学号。完成后请将定义程序代码保存到脚本文件3_2_1.sql。 (2) 为tempdb数据库创建名为U+考生学号的带登录名的用户名,使用本题(1)中创建的登录名。完成后请将定义程序代码保存到脚本文件3_2_2.sql。 (3) 为学生表Student、课程表Course、教师表Teacher分配只读权限,成绩表分配读写权限。完成后请将程序代码保存到脚本文件3_2_3.sql。 3.运行CreateTeaching.sql在系统数据库tempdb中生成解答用数据库对象,完成如下完整性定义。每小题4分,共12分 (1) 在SC与Teacher之间定义参照完整性,外码名为FK_SC_Teacher_Tno,并定义违约处理规则:修改规则为 Cascade,删除规则为 No Action。完成后请将本操作的程序保存到脚本文件3_3_1.sql。 (2) 学生表Student中学生姓名不允许重复,将此规则保存为UQ_Sname。完成后请将本操作的程序保存到脚本文件3_3_2.sql。 (3) 在学生表上规定学生的性别只能是“男”、“女”,将此规则保存为CK_Student_Ssex。完成后请将本操作的程序保存到脚本文件3_3_3.sql。 4. 运行CreateTeaching.sql在系统数据库tempdb中生成解答用数据库对象,在SSMS中查询分析器中设计并调试如下查询,把SQL脚本代码分别保存到指定的SQL程序文件中。每小题3分,共15分 (1) 新增一位同学:200215129,王大鹏,男,23,CS,新增该生一条选课数据:该生选了数据库课程,该课主教教师未知,还未考试。完成后请将查询代码保存到脚本文件3_4_1.sql。 (2) 修改少数民族学生李勇所有选修课成绩,都加5分。完成后请将查询代码保存到脚本文件3_4_2.sql。 (3) 因为考试事故,删除计科系的所有选课信息。完成后请将查询代码保存到脚本文件3_4_3.sql。 (4) 查询与“刘晨”同一个院系的其他同学的所有信息。完成后请将查询代码保存到脚本文件3_4_4.sql。 (5) 生成选修课为达标的学生的信息,包括学号、姓名、院系、总学分,达标条件:选修课门数达到6门。完成后请将查询代码保存到脚本文件3_4_5.sql。 5. 运行CreateTeaching.sql在系统数据库tempdb中生成解答用数据库对象,为计科系生成如下选修课综合信息视图(仅包括计科系学生的选课信息,未选课的计科系学生也包括在视图的数据集中,如果未选课则课程等相关字段记为NULL,选了课但未考试则成绩等相关字段记为NULL,如果考试成绩未及格学分记为0,否则得到课程学分)。完成后请将本视图定义的程序保存到脚本文件3_5.sql。7分 6. SQL 程序设计:运行CreateTeaching.sql在系统数据库tempdb中生成解答用数据库对象,完成如下对象定义,把相应的SQL程序分别保存到指定的SQL文件中。每小题7分,共21分 (1) 为教师表定义一个名为Tr_Insert_Or_Update_Sal触发器,实现如下完整性规则:“教授的工资不得低于4000元,如果低于4000元,自动改为4000元”。请完成触发体设计,完成后请将本定义的程序保存到脚本文件3_6_1.sql。 Create Trigger Insert_Or_Update_Sal On Teacher After INSERT, UPDATE AS (2) 利用ROW_NUMBER() OVER设计一分页查询存储过程DividePage,每次调用返回指定数据表中指定页大小及页码的满足条件的记录结果集,其参数设计如下,请完成过程体设计,完成后请将本定义的程序保存到脚本文件3_6_2.sql。 Create Procedure DividePage ( @tblName varchar(255), -- 表名,不允许为空 @strOrder varchar(255), -- 排序的字段名,不允许为空 @PageSize int = 6, -- 页尺寸 @PageIndex int, -- 页码 @OrderType bit = 0, -- 设置排序类型, 非0 值则降序 @strWhere varchar(1500)='' -- 查询条件(注意: 不要加where) ) AS (3) 定义一用户函数Get_birthday,根据身份证得到生日。(提醒,身份证可能有15、18位的情况), 其参数设计如下,请完成函数体设计,完成后请将本定义的程序保存到脚本文件3_6_3.sql。 Create Function Get_birthday ( @idcardno nvarchar(50) ) returns varchar(10) As
2024-06-24 03:00:30 179.77MB 参考资料
1
易语言QQ相关操作模块源码,QQ相关操作模块,访问网络,HTTP带进度条下载,取随机整数,取验证码地址,获取验证码,密码到MD5,后台登录QQ,保存Cookies,取昵称,读取Cookies,设置Cookies,清除Cookies,转换为GMT格式,取端口,取域名,取页面地址,取文本中间内容,取配置项
1
此程序是一个基础的c#操作ACESS数据库实例,包含数据库的连接、修改、插入、删除等功能,并绑定到控件datagridview上,非常适合初学者参考
2023-12-10 05:04:16 86KB Acess
1
压缩包中为WinRing0相关源代码,及已编译好的dll动态库,支持Win32和x64平台下获取CPU温度获取及cpuid相关操作
2023-05-16 16:26:50 725KB cpuid相 WinRin WinRin CPU温度获
1
主要介绍了python执行shell脚本创建用户及相关操作,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
1
一、Eclipse文件映射至虚拟机中Windchill服务器中 二、Eclipse同步配置 三、Eclipse配置Debug 四、Eclipse配置SVN同步
2023-02-16 10:17:04 1.38MB Eclipse java Debug svn
1
Linux用户相关操作 linux新建用户等用户相关操作
2023-01-06 09:02:34 1.76MB Linux
1
Qt案例之利用QScreen类相关操作实现截屏操作,详细内容可参考文章:https://blog.csdn.net/didi_ya/article/details/122896111
2023-01-04 10:11:14 5KB qt 开发语言 c++ ui
1
采用面向对象的思想,通过Redis实现对新闻数据的添加(普通添加和事务添加),通过id删除,通过id修改,分页,获取全部新闻数据
2022-11-24 09:21:34 6KB 面向对象 Redis python
1
华为开源关系型数据库openGauss,容器化相关操作包括 docker安装、持久化、镜像制作等
2022-09-24 11:03:21 2.14MB openGauss 数据库 容器 docker
1