实验七Transact和游标实验.doc

上传人:sk****8 文档编号:3550595 上传时间:2019-06-04 格式:DOC 页数:9 大小:307.56KB
下载 相关 举报
实验七Transact和游标实验.doc_第1页
第1页 / 共9页
实验七Transact和游标实验.doc_第2页
第2页 / 共9页
实验七Transact和游标实验.doc_第3页
第3页 / 共9页
实验七Transact和游标实验.doc_第4页
第4页 / 共9页
实验七Transact和游标实验.doc_第5页
第5页 / 共9页
点击查看更多>>
资源描述

1、- 1 -实验七 Transact-SQL 程序设计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_infoWHERE

2、 姓名 LIKE 张%SELECT stu_name观察显示的结果,与 student_info 表中数据进行比较, stu_name 赋值的是SELECT 结果集中的哪个数据?stu_name 的赋值是学生表中姓张的学生的名字(2) 定义 int 型局部变量grademax 、grademin 、gradesum ,在grade 表中查找最高分、最低分和总分,分别赋给 grademax、grademin 和gradesum,并显示。- 2 -(3) 使用 SET 命令将某个查询结果集记录数目赋值给 int 型局部变量row。(4) 以下代码在 curriculum 表中插入新记录: DECL

3、ARE intCId int,intErrorCode intINSERT INTO curriculum(课程编号,课程名称,学分)VALUES(0006,VB 程序设计,2) SELECT intCId=identity,intErrorCode=errorSELECT intCId,intErrorCode将该代码段连续执行两次,观察两次显示的信息及 curriculum 表中数据的变化,为什么前后两次执行时显示的信息会不同?- 3 -(5) 在 student_db 数据库的 student_info 表中,以 “性别”为分组条件,分别统计男生和女生人数。(6) 在 grade 表中,

4、使用适当函数找出 “高等数学”课程的最高分、最低分和平均分。- 4 -(7) 定义一个 datetime 型局部变量studate,以存储当前日期。计算student_info 表中的学生的年龄,并显示学生的姓名、年龄。(8) 运行以下代码,写出运行结果。DECLARE a int,b intSET a=168SET b=73SELECT a & b,a|b,ab(9) 在局部变量stu_id 中存储了学号值。编写代码查询学号为 0001 的学生的各科平均成绩,如果平均分60,则显示“你的成绩及格了,恭贺你 !” ,否则显示“你的成绩不及格” 。- 5 -(10) 运行以下代码段,写出运行的结

5、果。DECLARE counter intSET counter=1WHILE counter10BEGINSELECT counter 的值现在为: +CONVERT(CHAR(2),counter)SET counter=counter+1END- 6 -(11) 查询 grade 表。如果分数大于等于 90,显示 A; 如果分数大于等于 80 小于 90,显示 B;如果分数大于等于 70 小于 80,显示 C;如果分数大于等于 60 小于 70,显示 D; 其他显示 E。(12) 计算 grade 表的分数列的平均值。如果小于 80,则分数增加其值的5%;如果分数的最高值超过 95,则终

6、止该操作。- 7 -(13) 在 student_db 数据库中,使用游标查询数据。 声明一个 stu_cursor 游标,要求返回 student_info 表中性别为“男”的学生记录,且该游标允许前后滚动和修改。 打开 stu_cursor 游标。 获取并显示所有数据。 关闭该游标。- 8 -(14) 使用游标修改数据。 打开 stu_cursor 游标。 将姓马的男同学的出生日期的年份加 1。 关闭 stu_cursor 游标。(15) 声明游标变量stu_c,使之关联 stu_cursor 游标,利用stu_c 查询年龄在 69 月份出生的学生信息。(16) 使用系统存储过程 sp_c

7、ursor_list 显示在当前作用域内的游标及其属性。- 9 -3实验思考(1) Transact-SQL 语言的运算符主要有哪些?答:主要有以下六大类:算术运算符、赋值运算符、位运算符、比较运算符、逻辑运算符以及字符运算符。(2) 流程控制语句与其他编程语言提供的语句有何差别?答:流程控制语句是指那些用来控制程序执行和流程分支的命令,在 SQL SERVER 2000 中,流程控制语句主要用来控制 SQL 语句、语句块或者存储过程的执行流程。(3) 区分局部变量与全局变量的不同,思考全局变量的用处。答:不同点:局部变量的首字母为单个,使用 DECLARE 语句定义,仅存在于声明它的批处理,

8、存储过程或触发器中,处理结束后,存储在局部变量中的信息将丢失。全局变量由系统定义并维护,通过在名称前加符号区别于局部变量,通常被服务器用来跟踪服务器范围和特定会话期间的信息,不能显示的赋值或声明。全局变量不能由用户定义,也不能被应用程序用来在处理器之间交叉传递信息。全局变量的作用:全局变量通常存储一些 SQL SERVER 的配置设定值和统计数据。用户可以在程序中用全局变量来测试系统的设定值或是 Transact-SQL 命令执行后的状态值。(4) 什么函数能将字符串前和尾的空格去掉?答:有三个函数:ltrim(),rtrim(),trim()(5) 使用什么语句可以打开游标?打开成功后,游标指针指向结果集的什么位置?答:使用 OPEN cursor_name 语句打开游标。当游标打开成功后,游标指针指向结果集的第一行。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 实用文档资料库 > 策划方案

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。