SQL Server数据库技术与实训 教学课件 ppt 作者 刘志成 罗耀军 主编chapter7

上传人:w****i 文档编号:94381946 上传时间:2019-08-06 格式:PPT 页数:34 大小:437KB
返回 下载 相关 举报
SQL Server数据库技术与实训 教学课件 ppt 作者 刘志成 罗耀军 主编chapter7_第1页
第1页 / 共34页
SQL Server数据库技术与实训 教学课件 ppt 作者 刘志成 罗耀军 主编chapter7_第2页
第2页 / 共34页
SQL Server数据库技术与实训 教学课件 ppt 作者 刘志成 罗耀军 主编chapter7_第3页
第3页 / 共34页
SQL Server数据库技术与实训 教学课件 ppt 作者 刘志成 罗耀军 主编chapter7_第4页
第4页 / 共34页
SQL Server数据库技术与实训 教学课件 ppt 作者 刘志成 罗耀军 主编chapter7_第5页
第5页 / 共34页
点击查看更多>>
资源描述

《SQL Server数据库技术与实训 教学课件 ppt 作者 刘志成 罗耀军 主编chapter7》由会员分享,可在线阅读,更多相关《SQL Server数据库技术与实训 教学课件 ppt 作者 刘志成 罗耀军 主编chapter7(34页珍藏版)》请在金锄头文库上搜索。

1、第章 存储过程,7.1 T-SQL程序设计基础 7.2 存储过程 7.3 游标,7.1 T-SQL程序设计基础,标识符是指用户在SQL Server中定义的服务器、数据库、数据库对象、变量和列等对象名称。SQL Server标识符分为常规标识符和定界标识符两类。其中定界标识符允许在标识符中使用SQL Server保留关键字或常规标识符中不允许使用的一些特殊字符,这是由双引号或方括号定界符进行分隔的标识符。,标识符,常规标识符遵守以下的命名规则: )标识符长度可以为1128个字符。 )标识符的首字符必须为Unicode 2.0标准所定义的字母或_、符号。 )标识符第一个字符后面的字符可以为Uni

2、code Standard 2.0所定义的字符、数字或、#、$、_符号。 )标识符内不能嵌入空格和特殊字符。 )标识符不能与SQL Server中的保留关键字同名。,注释是程序代码中不执行的文本字符串。在SQL Server中,可以使用两种类型的注释字符:“-”用于单行注释;“/* */ ”用于多行注释。例如: /*查询商品信息*/ SELECT * FROM Commoditys -从表Commoditys中查询信息 GO,注释,批处理,多条语句作为一个批处理执行时,其语句之间用GO分隔。 例如: USE EasyBuy GO CREATE VIEW vw_Commoditys AS SEL

3、ECT * FROM Commoditys GO SELECT * FROM vw_Commoditys GO,运算符用来执行列、常量或变量间的数学运算和比较操作。SQL Server支持的运算符分算术运算符、位运算符、比较运算符、逻辑运算符、赋值运算符、字符串连接运算符和单目运算符。 1. 算术运算符 算术运算符有加(+)、减(-)、乘(*)、除(/)、取模(%)。 2. 位运算符 位运算符用来对整数或二进制数据进行按位与(&)、或(|)、异或()、求反()等逻辑运算。,运算符,3. 比较运算符 比较运算符用来比较两个表达式的值是否相同。SQL Server支持的比较运算符包括(大于)、=(

4、等于)、=(大于等于)、(不等于)、!=(不等于)、!(不大于)和!(不小于)。 4. 逻辑运算符 用于测试条件是否为真,它与比较运算符一样,根据测试结果返回布尔值TRUE、FALSE或UNKNOW。逻辑运算符有AND、OR和NOT三种。,5. 赋值运算符 SQL Server中的赋值运算符为等号(=),它将表达式的值赋给一个变量。例如: DECLARE price INT SET price =80 6. 字符串连接符 实现字符串之间的连接操作。下列表达式用字符串连接符实现两字符串间的连接。 SELECT liuzc + 720518 返回结果为 liuzc720518,7. 单目运算符 单

5、目运算符指只有一个操作数的运算符,包括+(正)、-(负)和(位反)。例如: DELCLARE intNum INT SET intNum=10 SELECT -intNum 返回结果为 -10,8. 运算符优先级 在SQL Server中,运算符的优先级如下: 1)+(正)、-(负)、(按位NOT)。 2)*(乘)、/(除)、%(模)。 3)+(加)、+(连接)、-(减)。 4)=、=、!=、!和!(比较运算符)。 5)(位异或)、&(位与)、|(位或)。 6)NOT。 7)AND。 8)OR、ALL、ANY、BETWEEN、IN、LIKE、SOME。 9)=(赋值)。,运算符,1. 局部变量

6、 1)变量声明 T-SQL中用DECLARE语句声明变量,并在声明后将变量的值初始化为NULL。DECLARE语句的基本语句格式如下: DECLARE variable_name date_type ,variable_name data_type,2)变量赋值 变量声明后,DECLARE语句将变量初始化为NULL,这时,我们可以调用SET语句或SELECT语句为变量赋值,但建议使用SET语句。 SET语句的基本语句格式如下: SET variable_name = expression SELECT语句为变量赋值的基本语句格式如下: SELECT variable_name = expres

7、sion FROM WHERE Expression为有效的SQL Server表达式,它可以是一个常量、变量、函数、列名和子查询等。 DECLARE quantity INT SET quantity =210,2.全局变量 全局变量不能由用户定义,全局变量不可以赋值,并且在相应的上下文中时随时可用。 常用的全局变量有: )ERROR:返回最后执行的T-SQL语句的错误代码,返回类型为integer。 )ROWCOUNT :返回受上一语句影响的行数,除了DECLARE 语句外,其他任何语句都可以改变其值。 )IDENTITY:返回最后插入的标识值,返回类型为numeric。,显示和输出语句,

8、1. PRINT语句 PRINT语句用来在屏幕上输出相关信息。 基本语句格式如下: PRINT any ASCII text | local_variable | FUNCTION | string_expr 2. RAISERROR语句 RAISERROR语句用来返回用户定义的错误信息。 基本语句格式如下: RAISERROR ( msg_id | msg_str , severity , state ),流程控制语句,1. BEGINEND语句 该语句用于将多条T-SQL语句封装起来,构成一个语句块,它用在IFELSE、WHILE等语句中,使语句块内的所有语句作为一个整体被执行。BEGIN

9、END语句可以嵌套使用。 BEGINEND的基本语句格式如下: BEGIN SQL语句语句块 END,2. 条件语句 IFELSE语句是条件判断语句,其中,ELSE子句是可选的,最简单的IF语句没有ELSE子句部分。 IFELSE的基本语句格式如下: IF SQL语句语句块 ELSE SQL语句语句块 IFELSE语句的执行方式是:如果布尔表达式的值为True,则执行IF后面的语句块;否则,执行ELSE后面的语句块。,3. 循环语句 WHILECONTINUEBREAK语句用于设置重复执行 SQL 语句或语句块的条件。只要指定的条件为真,就重复执行语句。其中,CONTINUE语句可以使程序跳过

10、CONTINUE语句后面的语句,回到WHILE循环的第一行命令。 BREAK语句则使程序完全跳出循环,结束WHILE语句的执行。 WHILE的基本语句格式如下: WHILE SQL语句语句块 BREAK SQL语句语句块 CONTINUE SQL语句语句块,4. 返回语句 RETURN语句用于无条件地终止一个查询、存储过程或者批处理,此时位于RETURN语句之后的程序将不会被执行。RETURN语句的基本语句格式如下: RETURN integer_expression 其中,参数integer_expression为返回的整型值。,系统内置函数,如同其他编程语言一样,T-SQL语言也提供了丰富

11、的数据操作函数,常用的函数有: )数据转换函数 )字符串函数 )日期和时间函数 )数学函数 )系统函数。,7.2 存储过程,SQL Server提供了一种方法,它可以将一些固定的操作集中起来由SQL Server数据库服务器来完成,以实现某个任务,这种方法就是存储过程。 存储过程具有如下优点: 1)加快系统运行速度。 2)当对数据库进行复杂操作时(如对多个表进行Update、Insert、Query、Delete时),可将此复杂操作用存储过程封装起来与数据库提供的事务处理一起使用。 3)存储过程可以重复使用,可减少数据库开发人员的工作量。,存储过程简介,4)安全性高,可设定只有某用户才具有对指

12、定存储过程的使用权。 5)减少网络流量。 存储过程分为三类:系统提供的存储过程、用户定义的存储过程和扩展存储过程。 1)系统提供的存储过程:在安装SQL Server时,系统创建了很多系统存储过程。系统存储过程主要用于从系统表中获取信息,系统存储过程的名字都以“sp_”为前缀。 2)用户定义的存储过程:是由用户为完成某一特定功能而编写的存储过程。 3)扩展存储过程:是对动态链接库(DLL)函数的调用。,使用命令方式创建和执行存储过程,1. 创建存储过程 创建存储过程的基本语句格式如下: CREATE PROCEDURE 存储过程名 参数1 数据类型 = 默认值 OUTPUT, , 参数n 数据

13、类型 = 默认值 OUTPUT AS SQL语句 ,2. 使用输入参数 在创建存储过程时可以使用输入参数,并给参数指定默认值,这样,调用存储过程时相应参数可以不赋值。 3. 使用输出参数 输出参数用于在存储过程中返回值,使用OUTPUT声明输出参数。 4. 存储过程的返回值 存储过程可以用return语句返回值。,使用企业管理器创建存储过程,利用企业管理器创建存储过程步骤如下: 1)展开要在其中创建存储过程的数据库,右击【存储过程】图标弹出快捷菜单,如下图所示。,2)在快捷菜单中选择【新建存储过程】选项,打开【新建存储过程】对话框,在其文本框中书写存储过程定义,如下图所示。,3)定义完存储过程

14、后,单击【确定】按钮保存存储过程。 查看存储过程时,可以在前面选择【新建存储过程】图的右边窗格中选择指定的存储过程,如下图所示,单击右键选择【属性】选项,即可查看指定存储过程的详细内容。删除存储过程时,可以在该图所示的快捷菜单中选择【删除】选项。,使用命令方式修改和删除存储过程,1. 修改存储过程 使用ALTER PROCEDURE语句可以更改先前通过执行 CREATE PROCEDURE 语句创建的过程。 ALTER PROCEDURE基本语句格式如下: CREATE PROCEDURE 存储过程名 参数1 数据类型 = 默认值 OUTPUT, , 参数n 数据类型 = 默认值 OUTPUT

15、 AS SQL语句 ,2. 删除存储过程 使用DROP PROCEDURE可以删除存储过程,其基本语句格式如下: DROP PROCEDURE 存储过程名,7.3 游标,关系数据库中的操作会对整个行集产生影响,由 SELECT 语句返回的行集包括所有满足该语句WHERE子句中条件的行,由语句所返回的这一完整的行集被称为结果集。应用程序,特别是交互式联机应用程序,并不总能将整个结果集作为一个单元来有效地处理。这些应用程序有时需要一种机制以便每次处理一行或一部分行,游标就提供了这种机制。,游标概述,T-SQL 游标一般使用步骤: 1)声明游标 2) 打开游标 3) 提取游标 4) 根据需要,对游标

16、中当前位置的行执行修改 操作(更新或删除) 5) 关闭游标 6) 释放游标 以上步骤对应的T-SQL语句为:,1.DECLARE CURSOR 声明游标,其基本语句格式如下: DECLARE cursor_name CURSOR FOR SELECT_statement 参数含义如下: cursor_name:是所定义的 T-SQL 服务器游标名称。 SELECT_statement:是定义游标结果集的标准SELECT语句。 2.OPEN 打开游标,其基本语句格式如下: OPEN cursor_name,3. FETCH 提取游标,从 T-SQL 服务器游标中检索特定的一行。其基本语句格式如下: FETCH NEXT | PRIOR | FIRST | LAST

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

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号