数据库SQL实验题目(14

上传人:ba****u 文档编号:203351057 上传时间:2023-04-24 格式:DOCX 页数:10 大小:107.14KB
收藏 版权申诉 举报 下载
数据库SQL实验题目(14_第1页
第1页 / 共10页
数据库SQL实验题目(14_第2页
第2页 / 共10页
数据库SQL实验题目(14_第3页
第3页 / 共10页
资源描述:

《数据库SQL实验题目(14》由会员分享,可在线阅读,更多相关《数据库SQL实验题目(14(10页珍藏版)》请在装配图网上搜索。

1、实验一数据定义操作实验目的1. 掌握数据库和表的基础知识2. 掌握使用创建数据库和表的方法3. 掌握数据库和表的修改、查看、删除等基本操作方法实验内容和要求一、数据库的创建在开始菜单中,启动SQl Server程序中的“SQLServer Management Studio ”,在对象资源 管理器窗口中,右键单击“数据库”,选择“新建数据库”,创建成绩管理数据库Grademanager, 要求如下表所示:Grademanager数据库参数表参数参数值参数参数值存储的数据文件路 径D:dbgrademanager_data.mdf存储的日志文件路 径D:dbgrademanager_log.ld

2、f数据文件初始大小5MB日志文件初始大小2MB数据文件最大值20MB日志文件最大值15MB数据文件增长量原来10%日志文件增长量2MB二、表的创建、查看、修改和删除1. 表的创建在Grademanager数据库中,右键单击“表”,选择“新建表”命令,创建如下表所示的表:(1) Student表的表结构字段名称数据类型长度精度小数位数是否允许Null 值说明SnoChar1000否学号,主码SnameVarchar800是姓名SsexChar200是性别,取值:男或女SbirthdayDate800是出生日期SdeptChar1600是系名SpecialityVarchar2000是专业名特别注

3、意:为属性Ssex设置约束,需选中属性Ssex行,然后单击菜单中的“表设计器”,选择“CHECK 约束”命令,然后按照图1进行设置。图1设置性别的约束(2) Course表(课程名称表)的表结构字段名称数据类型长度精度小数位数是否允许Null值说明CnoChar500否课程号,主码CnameVarchar2000否课程名(3) SC表(成绩表)的表结构字段名称数据类型长度精度小数位数是否允许Null值说明SnoChar1000否学号,外码CnoChar500否课程号,外码DegreeDecimal551是成绩,0100之间特别注意: 为属性Degree约束,可参照属性Ssex进行设置,“CHE

4、CK约束对话框”中的表达式为Degree=1 And Degree=60观察一下显示出来的数据是否有序。3. 利用SQL命令实现下列操作: 为Student表创建一个名为S_dept的索引,以系别排序 为Teacher表创建一个名为T_name的聚集索引,以Tname降序排序。命令格式:create clustered index on表名(列名1 顺序,列名2 顺序) 删除S_dept索引。命令格式:drop index表名.索引名或drop index索引名on表名三、视图的创建与使用1. 创建一个简单视图view1,查询“计算机系”学生的信息2. 创建一个简单视图view2,统计每门课程

5、的选课人数和最高分3. 创建一个复杂视图view3,查询与“张立”同学同一系别的学生信息4. 删除视图View3思考题1. 利用INSERT、UPDATE和DELETE命令可以同时对多个表操作吗?2. 使用索引为什么能提高查询速度?3. 索引经常被建立在哪些字段上?4. 聚集索引与其他索引有什么不同?实验五 存储过程、函数、触发器及游标操作实验目的1. 掌握compute by的使用2. 掌握变量的定义和使用方法3. 掌握存储过程的定义和执行方法4. 掌握触发器的定义方法5. 掌握函数的定义和调用方法6. 掌握游标的定义和使用方法(提示:以下操作全部基于实验一创建的Grademanager数据

6、库)实验内容和要求一、使用compute by完成下列操作1. 显示所有学生的成绩,并汇总每个学生的总分。2. 显示所有学生的信息,并汇总男女学生的人数。二、存储过程1. 创建一个名为Query_student的存储过程,该存储过程的功能是根据学号查询学生表 中某一学生的学号、姓名、性别及出生日期。执行存储过程Query_student,查询学号 为“20050301 ”的学生的学号、姓名、性别及出生日期。写出完成此功能的SQL命 令。2. 创建存储过程sm_score,用于求指定学号(输入参数)的学生的总成绩(输出参数) 执行该存储过程,指定学号为“20050101 ”。3. 创建并执行存储

7、过程count_sno,用于求所有学生人数,通过参数返回学生人数。4. 删除存储过程count_sno。5. 创建一个向课程表中插入一门新课程的存储过程Insert_course,该存储过程需要两个 参数,分别用来传递课程号、课程名;执行存储过程Insert_course,向课程表Course 中插入一门新课程(0807011,Flash动画设计)。6. 创建一个能向学生表中插入一条记录的存储过程Insert_student,执行存储过程Insert_student,向学生表中插入一个新同学(20060208,徐小花,女,1987-08-25, IS, 电子商务)。三、触发器1. 在SC表创建

8、一个INSERT触发器,如果插入一条选课信息时,学生的学号值在表S 中不存在,则不执行插入操作,并提示用户。2. 使用insert语句向SC表中插入记录(20020101, C01),观察触发器INSERT_SC 是否被执行。3. 在Teaching表中创建一个插入触发器insert_teaching,一旦发现待插入的教师号Tno 在Teacher表中不存在,就发出警告信息并禁止插入。4. 创建一个当学生表中插入一个新同学时能自动列出全部同学学生信息的触发器 Display_trigger。5. 调用“存储过程部分”的第5题创建的存储过程Insert_student,向学生表中插入一 新同学,

9、新同学信息(20060311,张丽丽,女,1988-2-15, MA,数学),观察触发 器Display_trigger是否被执行。6. 在成绩表SC中创建一个UPDATE触发器update_score,当修改成绩时,如果发现 成绩小于0,则不执行修改操作,并提示用户。使用下面的SQL语句试图修改 20050101学生的成绩,观察触发器update_score是否被执行。update SC set Degree=-30 where Sno=200501017. 课程表Course中创建一个DELETE触发器delete_course,如果待删除的课程在SC 表中存在对应的选课记录,则不执行删除

10、操作,并提示用户。使用下面的SQL语句 试图删除C01课程信息,检查触发器delete_course是否被执行。delete from Course where Cno=C018. 禁用update_score触发器9. 启用update_score触发器10. 删除update_score触发器四、函数操作1、创建一个标量值函数getavgscore以获取某门课平均成绩。2、创建内联表值函数getscore以获取某个学生的成绩信息。五、游标操作为“电子商务”专业的学生创建一个Scroll游标speciality_cursor,显示其学号、姓名、性 别、出生日期,打开游标后按顺序执行以下操作:1、提取结果集的第一行2、提取结果集最后一行3、提取上一行4、提取下一行5、提取所有行6、关闭游标7、删除游标

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!