数据库原理与应用实验作业布置Word下载.docx
- 文档编号:16825777
- 上传时间:2022-11-26
- 格式:DOCX
- 页数:51
- 大小:990.73KB
数据库原理与应用实验作业布置Word下载.docx
《数据库原理与应用实验作业布置Word下载.docx》由会员分享,可在线阅读,更多相关《数据库原理与应用实验作业布置Word下载.docx(51页珍藏版)》请在冰豆网上搜索。
物理文件名
初始
大小
自动
增量
最大
容量
主文件组
PRIMARY
主数据
ST_Data
\SQL2000DB\
ST_Data.mdf
3M
1M
不限制
增长
日志
ST_log
ST_log.ldf
2M
10%
10M
3.利用企业管理器查看ST数据库的属性。
4.使用T-SQL语句建立学生-课程数据库ST,参数如表1.1所示。
5.使用T-SQL语句建立数据库JXDB,参数如表1.2所示。
表1.2数据库JXDB属性设置
JXDB_Data
JXDB_Data.mdf
次数据
JXDB_Data1
JXDB_Data1.ndf
30M
自定义
JX_Group1
JXDB_Data2
JXDB_Data2.ndf
20M
JXDB_Data3
JXDB_Data3.ndf
JXDB_log
JXDB_log.ldf
6.使用T-SQL语句为数据库JXDB添加文件组JX_Group2,并为此文件组添加1个数据文件JXDB_Data4;
添加1个日志文件JXDB_log1。
参数由用户自己设定。
7.使用T-SQL语句修改数据库JXDB中次数据文件JXDB_Data4的属性:
文件初始大小改为5M,增长方式改为每次按20%增长。
删除日志文件JXDB_log1。
8.使用T-SQL语句删除数据库JXDB。
(二)自定内容
五、出现的问题及解决方法
实验2表结构的建立修改删除及完整性约束条件定义
MSSQLServer2000或MSSQLServer2008。
1.掌握建立、修改与删除表结构的两种方法。
2.掌握定义完整性约束条件的方法。
3.掌握利用企业管理器和使用T-SQL语句向表中插入记录的方法。
1.对学生课程数据库ST进行完整性约束条件规划设计。
设计结果如表2.1所示。
表2.1学生课程数据库ST完整性约束条件
表名
完整性约束条件
约束类型
学生
(1)学号取值唯一且不能为空值
主健
(2)姓名不能为空值
Notnull
(3)性别只能为“男”或“女”。
默认值为’男’
Check;
default
课程
(4)课号取值唯一且不能为空值
(5)课名取值唯一
unique
(6)先修课号只能是学校已开设的课号
修改课号时,与之对应的先修课号自动级联修改
若某课程有先修课,则其先修课程删除时该课程的先修课号置空值
当插入或修改“先修课号”时,若该课号在表中不存在,则递归插入
外键
触发器
选修
(7)学号、课号取值唯一且不能为空值
(8)成绩采用百分制
check
(9)学号只能是学生表中已有的学号。
当修改某学生学号时,该生所有选课记录的学号自动级联修改;
当删除某学生时,该生所有选课记录自动级联删除。
级联更改
级联删除
(10)课号只能是课程表中已有的课号;
当修改课程表中的课号时,选修表中所有选修该课程的课号自动级联修改;
当删除课程表中某课程时,若选修表中该课程有学生选修,则拒绝删除。
拒绝删除
2.对学生课程数据库ST中各个表结构进行详细设计。
学生、课程及选修表结构设计结果分别如表2.2、2.3和2.4所示。
表2.2“student”表结构
列名
数据类型
允许Null值
约束条件
sno
char(9)
primarykey
sname
char(8)
ssex
char
(2)
check(性别in('
男'
'
女'
))
default'
sage
smallint
sdept
char(20)
表2.3“course”表结构
cno
char(4)
cname
char(16)
ccredit
cpno
references课程(课号)
级联更改,置空值删除触发器
递归插入触发器
表2.4“sc”表结构
sno
references学生(学号)
ondeletecascade
onupdatecascade
grade
decimal(5,1)
check(成绩>
=0and成绩<
=100)
表级约束:
primarykey(学号,课号)
3.使用企业管理器在数据库ST中建立学生、课程及选修表结构。
4.使用企业管理器为学生、课程及选修表录入若干行数据。
5.使用企业管理器删除学生、课程及选修表
6.使用T_SQL语言在数据库ST中建立学生、课程及选修表结构。
7.使用T_SQL语言为学生、课程及选修表插入若干行数据。
实验3数据查询与更新
1.掌握SELECT语句的语法、语义及语用。
2.掌握基于单表的查询方法。
3.掌握基于多表的查询方法。
4.掌握相关与不相关的嵌套查询。
5.掌握集合的并操作(UNION)查询。
6.掌握插入(INSERT)、修改(UPDATE)和删除(DELETE)语句的使用。
1.单表查询
USEST
--[3_1]查询全体学生的详细记录。
--[3_2]查询选修了课程的学生学号。
--[3_3]查询年龄不在20~23岁之间的学生姓名、系别和年龄。
--[3_4]查询计算机科学系(cs)、数学系(ma)和信息系(is)学生的姓名和性别。
--[3_5]查询所有姓刘学生的姓名、学号和性别。
--[3_6]查询名字中第2个字为"
阳"
字的学生的姓名和学号。
--[3_7]某些学生选修课程后没有参加考试,所以有选课记录,但没有考试成绩。
--查询缺少成绩的学生的学号和相应的课程号。
--[3_8]查询计算机系年龄在20岁以下的学生姓名。
--[3_9]查询选修了3号课程的学生的学号及其成绩,查询结果按分数降序排列。
--[3_10]查询全体学生情况,查询结果按所在系升序排列,同一系中的学生按性别降序排列。
--使用集函数
--[3_11]查询学生总人数。
--[3_12]查询选修了课程的学生人数。
--[3_13]计算1号课程的最高、最低及平均成绩。
--[3_14]查询学生200215121选修课程的平均成绩。
--[3_15]查询学生200215122选修课程的总学分数。
--使用GROUPBY子句分组
--[3_16]求各个课程号及相应的选课人数。
--使用HAVING短语筛选最终分组结果
--[3_17]查询选修了3门以上课程的学生学号。
--[3_18]查询有2门以上课程是90分以上的学生的学号及(90分以上的)课程数
2.连接查询
--自然连接
--[3_19]查询每个学生及其选修课程的情况。
--左外连接
--[3_20]查询每个学生及其选修课程的情况(包括没有选修课程的学生)。
--自身连接:
一个表与其自己进行连接,称为表的自身连接
--[3_21]查询每一门课的间接先修课(即先修课的先修课)
--复合条件连接
--[3_22]查询选修2号课程且成绩在90分以上的所有学生的学号、姓名。
--多表连接
--[3_23]查询每个学生的学号、姓名、选修的课程名及成绩。
3.嵌套查询
--[3_24]查询与“刘晨”在一个系学习的学生。
--[3_25]查询所有姓名相同的学生
--[3_26]查询选修了课程名为“信息系统”的学生学号和姓名。
--[3_27]找出每个学生超过他选修课程平均成绩的课程号。
--[3_28]查询其他系中比计算机科学系某一学生年龄小的学生姓名和年龄。
--[3_29]查询其他系中比计算机科学系所有学生年龄都小的学生姓名和年龄
--[3_30]查询所有选修了1号课程的学生姓名。
--[3_31]查询没有选修1号课程的学生姓名。
--[3_32]查询选修了全部课程的学生姓名。
--[3_33]查询至少选修了学生200215122选修的全部课程的学生号码。
4.集合查询
--[3_34]查询计算机科学系的学生及年龄不大于19岁的学生。
--[3_35]查询选修了课程1或者选修了课程2的学生。
--[3_36]查询计算机科学系的学生与年龄不大于19岁的学生的交集
--[3_37]查询选修课程1的学生集合与选修课程2的学生集合的交集
--[3_38]查询计算机科学系的学生与年龄不小于19岁的学生的差集。
--[3_39]学士学位授予条件为:
至少选修了1、3、4号3门学位课程,每门学位课必须及格且学位课平均成绩在75分以上。
查询cs系可授予学士学位的学生名单。
--[3_40]学士学位授予条件为:
至少选修了'
数据库'
操作系统'
数据结构'
3门学位课程,每--门学位课必须及格且学位课平均成绩在75分以上。
5.插入(INSERT)、修改(UPDATE)和删除(DELETE)语句的使用
--[3_41]插入一条选课记录('
200215123'
1'
)。
--[3_42]对每一个系,求学生的平均年龄,并把结果存入数据库。
--第1步:
建表,第2步:
插入子查询结果
--[3_43]复制表⑴先建立与sc表结构完全相同的表sc1,sc2⑵再将sc复制到sc1中。
--[3_44]合并表⑴先向表sc2输入数据⑵再将sc2合并到sc1中。
--[3_45]将信息系所有学生的年龄增加1岁。
--[3_46]对计算机科学系(cs)全体学生选修'
2'
号课程分数>
=36的按10*sqrt(grade)计算。
--[3_47]删除计算机科学系所有学生的选课记录。
--[3_48]删除未选修课程的学生。
--[3_49]删除只选1门课且成绩不及格学生的选课记录。
--[3_50]删除计算机系只选1门课且成绩不及格学生的选课记录。
实验4索引与视图
1.理解索引的目的、维护与使用,唯一与非唯一索引、聚簇与非聚簇索引、单索引与复合索引的区别。
2.掌握建立与删除索引的方法。
3.掌握建立与删除视图的方法。
4.掌握对视图表进行查询与更新的操作方法。
1.建立与删除索引
--[4_1]按索引查询姓"
李"
的学生。
--[4_2]按索引查询年龄20岁的女生。
--[4_3]删除student表上建立的索引。
--[4_4]聚簇索引
--[4_5](2004秋数据库系统工程师下午试题)
设有如下关系模式:
职工(职工号,姓名,年龄,月工资,部门号,电话,办公室)
假定分别在“职工”关系中的“年龄”和“月工资”字段上创建了索引,如下的Select查询语句可能不会促使查询优化器使用索引,从而降低查询效率,请写出既可以完成相同功能又可以提高查询效率的SQL语句。
Select姓名,年龄,月工资from职工
Where年龄>
45or月工资<
1000;
2.建立与删除视图
--[4_6]建立信息系学生的视图。
--[4_7]建立信息系学生的视图,并要求透过该视图进行的更新操作只涉及信息系学生。
--[4_8]建立信息系选修了1号课程的学生视图。
--[4_9]建立信息系选修了1号课程且成绩在90分以上的学生的视图。
--[4_10]先建立高考成绩基本表,在此基础上建立含总分列的视图。
--[4_11]将学生的学号及他的平均成绩定义为一个视图。
--[4_12]将student表中所有女生记录定义为一个视图。
--[4_19]建立视图GOOD_SC(修课成绩在平均成绩之上的元组)
--[4_20]建立1号课程的选课视图,并要求透过该视图进行的更新操作只涉及1号课程,
--同时对该视图的任何操作只能在工作时间进行。
3.视图的查询与更新
--[4_13]在信息系学生的视图中找出所有女学生。
--[4_14]查询信息系选修了1号课程的学生
--[4_15]在S_G视图中查询平均成绩在90分以上的学生学号和平均成绩
--[4_16]将信息系学生视图IS_Student中学号200215122的学生姓名改为“刘辰”。
--[4_17]向信息系学生视图IS_S中插入一个新的学生记录:
200215129,赵新,女
--[4_18]删除视图CS_S中学号为200215129的记录
实验5T_SQL基本程序设计
1.掌握T_SQL语言中顺序、分支、循环三种控制结构的语句。
2.掌握T_SQL语言中系统函数的使用方法。
3.学会使用T_SQL语句编写基本程序。
[5_1]求方程ax2+bx+c=0的根。
[5_2]查询全体学生的sno、sname、ssex、sdept,对于ssex,若是'
则显示'
男生'
,若是'
'
则显示'
女生'
。
[5_3]对选修表按成绩的分数段显示A、B、C、D、E五个等级。
[5_4]求100以内所有奇数的和。
[5_5]在20分钟内,每隔1分钟显示活动用户的信息。
[5_6]对选修2号课分数作如下处理:
若2号课平均分低于70分则普加5分,如此反复循环,当最高分为100分时退出循环。
实验6存储过程
1.。
2.掌握。
3.掌握。
实验7规则与触发器
实验7触发器
实验8自定义函数
1.掌握标量函数的建立与调用方法。
2.掌握内嵌表值函数的建立与调用方法。
3.掌握多语句表值函数的建立与调用。
实验9数据库的安全性
1.理解数据库的安全性概念。
2.掌握数据库的安全性控制技术。
实验10数据库的恢复与并发控制
1.理解事务的概念。
2.掌握数据库的恢复技术。
3.掌握数据库的并发控制技术。
实验11ESQL与ODBC编程
1.掌握ESQL的编程方法。
2.掌握ODBC的编程方法。
1.ESQL编程
//输出每个学生的学号和姓名。
esql1.sqc
#include<
stdio.h>
stdlib.h>
EXECSQLINCLUDEsqlca;
intmain()
{EXECSQLBEGINDECLARESECTION;
charno[9];
charname[8];
shortind1;
EXECSQLENDDECLARESECTION;
printf("
ThisismyEnbeddedSQLforCapplication\n"
);
EXECSQLCONNECTTOMYC.ST;
//连接到数据库
if(SQLCODE==0)
Connectdatabaseunsuccessfully。
\n"
else
{printf("
Error:
return
(1);
}
EXECSQLWHENEVERSQLERRORGOTOerror;
EXECSQLWHENEVERNOTFOUNDGOTOdone;
EXECSQL
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 原理 应用 实验 作业 布置