上传者: liubo_01
|
上传时间: 2021-06-03 21:29:16
|
文件大小: 850KB
|
文件类型: DOC
本文档为数据库上机实验报告,是自己认认真真一步一步写的,报告包含试验中的具体步骤,过程以及代码和实验结果截图,和实验总结。
实验一
实验题目:
数据库管理系统的使用
实验目的:
掌握SQL SERVER2005的使用和数据库设计的一般方法。
实验内容:
(1)SQL SERVER2005的使用
(2)数据库的设计过程并利用SQL SERVER2005建立数据库。
实验二
实验题目:
数据库的定义
实验目的:掌握数据表建立、修改、删除、索引的SQL语句。
实验内容:
(1)数据表的建立
(2)数据表的修改
(3)数据表的删除
(4)数据表的索引建立
为S表的DEPT建立唯一索引
(5)视图的建立与删除
建立一个计算机系学生基本信息视图CSV(SNO,SNAME,SEX,AGE)
查询1983年以后出生的计算机系学生基本信息。
建立一个计算机系学生成绩视图JSGV(SNO,CNO,GRADE)。
查询计算机系学生选课多于3门的学生学号。
查询计算机系学生2号课不及格的学生学号和成绩。
实验三
实验题目:
数据表的操作
实验目的:
掌握数据表数据操作的SQL语句。
实验内容:
SQL语句插入数据操作
SQL语句修改数据操作
SQL语句删除数据操作
SQL语句查询数据操作
维护数据SQL语句:
(1)在学生表中插入一新生信息(‘200213808’,’HUJING’,’女’,22,’计算机’)
(2)删除数据库中学号为’200213801’的退学学生有关信息。
(3)将计算机系学生2号课成绩全部提高5%。
查询数据SQL语句:
(4)统计有学生选修的课程门数。
(5)统计HU老师所授每门课程的学生平均成绩。
(6)统计所有选修人数多于20的课程号和选课人数,并按人数降序排列,若人数相等,则按课程号升序排列。
(7)检索所有缓考即成绩为NULL的同学学号、姓名和缓考课程号。
(8)检索‘OS’课成绩高于该课平均成绩的同学学号。
(1) 检索计算机系女生的学号和姓名。
(2) 检索全体学生姓名、出生年份和所在系。
(3) 检索未选修任何课程的学生学号。
(4) 检索WANG老师所授课程号、课程名。
(5) 检索所有姓LI同学的基本信息。
(6) 检索选修‘DATABASE’课程的学生学号。
(7) 检索年龄介于LIPING同学年龄和28岁之间的学生基本信息。
(8) 检索选修TIAN老师所授全部课程的学生学号。
实验四
实验题目:
T-SQL编程
实验目的:
掌握T-SQL语句的使用。
实验内容:
1.定义一个表变量,用来存储两名学生的学号,姓名,所在系。
2.编写一个自定义的函数,该函数接受一个学生姓名,返回其学生表中基本信息及选课情况。
3.试用CASE语句输出学生表中各年龄段的学生人数。
4.编写存储过程,以系别作为参数,统计指定系别的人数,并作为存储过程的输出。
实验题目:
数据库的完整性
实验目的:
掌握数据库的完整性约束定义,完整性检查及违约处理方式。
掌握触发器的定义及使用。
实验内容:
1. 定义S, C表的完整性约束
2. 定义SC表的完整性约束,要求当其被参照表发生删除操作时,违约处理的方式为级联,当其被参照表发生修改操作时,违约处理的方式为拒绝。
3. 触发器
☆ 建立一DML触发器,每当学生的成绩发生更新时,将更新的学号,成绩存入g-log表内
☆ 建立一个INSTEAD OF触发器,每当修改课程表中记录时,利用触发器动作替代修改操作。
☆ 建立一个DDL 触发器,不允许删除数据库中表,并作出响应。
实验六
实验题目:
数据库的安全性
实验目的:
掌握SQL SERVER 2005的安全控制机制
实验内容:
1. 创建登录
创建lg1,lg2,并设定口令
2. 定义用户
定义user1,user2,user1以lg1登录,user2以lg2登录,user1定义角色ddl_admin,datareader,datawriter
3. 掌握SQL SERVER 2005架构和用户分离的概念
为user1创建架构u1,并建立test表,通过授权模式的方法,授权给user2表访问test的权限
4. 数据库的授权、收权语句
☆ 将查询SC表和修改GRADE属性的权限授予用户user1。
☆ 将对表S的插入权限授予用户user2,并允许他将此权限授予其他用户。
☆ 收回所有用户对表S的插入权限。
实验七
实验题目:
数据库的设计
实验目的:
掌握数据库的概念结构设计和逻辑结构与设计,掌握ER图的表示方法即如何将ER模型转化为关系模型
1.学校有若干系,每个系有若干班级和教研室,每个教研室有若