南昌大学计算机数据库实验七 Transact和游标实验
更新时间:2023-09-30 20:07:01 阅读量: 综合文库 文档下载
实验七 Transact-SQL程序设计(2学时)
学号:6100410235 姓名:郑俊 班级:计科103班 实验日期:2012-12-06
1.实验目的
(1) 掌握Transact-SQL的数据类型、常量变量、表达式等的概念和使用方法。
(2) 掌握程序中注释的基本概念和使用方法。 (3) 掌握程序中的流程控制语句的使用方法。 (4) 掌握SQL Server 2005中常用函数的用法。
(5) 掌握游标的概念和声明方法,以及使用游标进行数据的查询、修改、删除操作等。
2.实验内容
(1) 选择student_db数据库,输入以下T-SQL代码。
DECLARE @stu_name varchar(10) SELECT @stu_name=姓名 FROM student_info
WHERE 姓名 LIKE '张%' SELECT @stu_name
观察显示的结果,与student_info表中数据进行比较,@stu_name赋值的是SELECT结果集中的哪个数据?
(2) 定义int型局部变量@grademax、@grademin、@gradesum,在grade表中查找最高分、最低分和总分,分别赋给@grademax、@grademin和@gradesum,并显示。
(3) 使用SET命令将某个查询结果集记录数目赋值给int型局部变量@row。
(4) 以下代码在curriculum表中插入新记录:
DECLARE @intCId int,@intErrorCode int
INSERT INTO curriculum(课程编号,课程名称,学分)
VALUES('0006','VB程序设计',2)
SELECT @intCId=@@identity,@intErrorCode=@@error SELECT @intCId,@intErrorCode
将该代码段连续执行两次,观察两次显示的信息及curriculum表中数据的变化,为什么前后两次执行时显示的信息会不同?
第一次:
第二次:
(5) 在student_db数据库的student_info表中,以“性别”为分组条件,分别统计男生和女生人数。
(6) 在grade表中,使用适当函数找出“高等数学”课程的最高分、最低分和平均分。
(7) 定义一个datetime型局部变量@studate,以存储当前日期。计算student_info表中的学生的年龄,并显示学生的姓名、年龄。
(8) 运行以下代码,写出运行结果。
DECLARE @a int,@b int SET @a=168 SET @b=73
SELECT @a & @b,@a|@b,@a^@b
(9) 在局部变量@stu_id中存储了学号值。编写代码查询学号为0001的学生的各科平均成绩,如果平均分?60,则显示“你的成绩及格了,恭贺你 !!”,否则显示“你的成绩不及格”。
(10) 运行以下代码段,写出运行的结果。
DECLARE @counter int SET @counter=1 WHILE @counter<10 BEGIN
SELECT '@counter的值现在为: '+CONVERT(CHAR(2),@counter) SET @counter=@counter+1 END
(11) 查询grade表。如果分数大于等于90,显示A; 如果分数大于等于
80小于90,显示B;如果分数大于等于70小于80,显示C;如果分数大于等于60小于70,显示D; 其他显示E。
(12) 计算grade表的分数列的平均值。如果小于80,则分数增加其值的5%;如果分数的最高值超过95,则终止该操作。
(13) 在student_db数据库中,使用游标查询数据。
① 声明一个stu_cursor游标,要求返回student_info表中性别为“男”的学生记录,且该游标允许前后滚动和修改。
② 打开stu_cursor游标。
③ 获取并显示所有数据。
④ 关闭该游标。
(14) 使用游标修改数据。
① 打开stu_cursor游标。
② 将姓马的男同学的出生日期的年份加1。 ③ 关闭stu_cursor游标。
(15) 声明游标变量@stu_c,使之关联stu_cursor游标,利用@stu_c查询年龄在6~9月份出生的学生信息。
declare @stu_c cursor set @stu_c=stu_cursor
declare @stu_id char(4),@stu_name char(8),@stu_sex char(2),@stu_age int,@stu_depa nchar(1),@stu_bdate datetime open @stu_c
fetch next from @stu_c
into @stu_id,@stu_name,@stu_sex,@stu_depa,@stu_age,@stu_bdate while @@FETCH_STATUS=0 begin
select @stu_id as sno,@stu_name as sname,@stu_sex as sex,@stu_depa as sdept,@stu_age as
sage,
@stu_bdate as birthday from student_info
where month(@stu_bdate)>=6 and month(@stu_bdate)<=9
fetch next from @stu_c into @stu_id,@stu_name,@stu_sex,@stu_depa,@stu_age,@stu_bdate end
close @stu_c
deallocate @stu_c
(16) 使用系统存储过程sp_cursor_list显示在当前作用域内的游标及其属性。
DECLARE @Report CURSOR
EXEC master.dbo.sp_cursor_list @cursor_return = @Report OUTPUT, @cursor_scope =2 FETCH NEXT from @Report CLOSE @Report
DEALLOCATE @Report
3.实验思考
(1) Transact-SQL语言的运算符主要有哪些?
答:算术运算符,赋值运算符,位运算符,比较运算符,逻辑运算符,字符串串联 运算符。
(2) 流程控制语句与其他编程语言提供的语句有何差别?
答: BEGIN?END也是流程控制语句需要用到的最基本关键字,用于将多个语句划分
成逻辑上的一部分。其实可以直接理解成Delphi的begin...end 或者C类语言的{},用于按块(block)顺次执行多条语句
IF..ELSE关键字实现了非此既彼的逻辑。和高级语言中的IF..ELSE具有完全一样的使用方法
在T-SQL的流程控制语句中,循环语句只有WHILE循环,并没有传统高级语言的FOR和SWITCH循环。WHILE除了被用于流程控制语句的循环之外,还经常被用于游标之中。
WHILE关键字和高级语言中的WHILE关键字几乎完全一样。WHILE循环中可以利用BREAK和CONTINUE关键字对循环进行控制。
(3) 区分局部变量与全局变量的不同,思考全局变量的用处。
答:全局变量是在所有函数之外声明的变量,局部变量则是在函数体内声明的变量。全局变量放在内存的全程数据区,局部变量在栈上申请。全局数据区分为两部分全局数据区和静态数据区,静态数据区专门存放static变量。static的全局变量只在该文件范围内可见,不能用extern声明为外部变量。
(4) 什么函数能将字符串前和尾的空格去掉?
答:MySQL 清除字符串首尾空格函数有三个: ltrim(), rtrim(), trim(),
(5) 使用什么语句可以打开游标?打开成功后,游标指针指向结果集的什么位置?
答:使用OPEN cursor_name语句打开游标。当游标打开成功后,游标指针指向结果集的第一行
正在阅读:
南昌大学计算机数据库实验七 Transact和游标实验09-30
询证函格式02-15
十月里的细雨10-28
论高职院校英语语法教学的新思维-2019年精选文档07-09
糖尿病足的护理论文12-10
河北省辛集市第三中学七年级语文上册 第19课《月亮上的足迹》同03-04
健康管理平台08-19
我的工艺品作文300字06-30
第二章 单选题04-05
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- 实验
- 游标
- 南昌大学
- Transact
- 数据库
- 计算机
- 朱莹 实验心理学笔记
- ORACLE11.2.0.3RAC 升级到11.2.0.4
- 泵 与 风 机 课程考核试卷 A
- 幼儿园班级卫生检查记录表
- 内蒙古工业大学 大学物理 习题作业 答案
- 员工手册(最终版本)
- 计算机应用基础教案 - 图文
- 尼采
- 行政领导者的领导艺术与素质4
- 镗工技师考试论文完整版
- 安全环保职业健康管理制度(全套最新版)
- 凡是典型人物都有典型性格
- 2019年度幼儿园小班工作计划5篇与2019年度幼儿园小班班主任工作计划合集
- 《水文地质学基础》实验实习讲义 - 图文
- 地铁土建屋面工程施工组织设计方案
- 2019年检验检测机构全套程序文件汇编
- 大机基答案考试内容
- 暑期实践策划-锡迹队
- FP-30型甲醛检测仪测定室内空气中甲醛含量的不确定度的评定
- 填料箱盖设计说明书