网站大量收购独家精品文档,联系QQ:2885784924

sql第05讲 T-SQL和存储过程.ppt

  1. 1、本文档共16页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
sql第05讲 T-SQL和存储过程

第05讲 T-SQL与存储过程;§1 T-SQL 一、 T-SQL(Transact-SQL) 概述 SQL是Structured Query Language(结构化查询语言)的缩写,T-SQL是Microsoft SQL Server 2000中使用的SQL。;二、Transact-SQL常用语言元素 1、注释 /*注释文本*/ 注释多行文本 - - 注释文本 注释单行文本 2、变量 两种形式变量:全局变量和局部变量 全局变量:以 @@ 标志开始 局部变量:以 @ 标志开始;全局变量在整个SQL Server系统内使用。存储的通常是一些SQL Server的配置设定值和统计数据。在使用全局变量时应该注意以下几点: 用户只能使用预先定义的全局变量。 引用全局变量时,必须以标记符“@@”开头。 全局变量对用户来说是只读的。 局部变量的名称不能与全局变量的名称相同。;局部变量可以保存程序执行过程中的中间数据值,保存由存储过程返回的数据值等。 1)局部变量的定义 DECLAER @变量名 类型 [ ,…n ] 2)局部变量的赋值方法 SET @变量名 = expression 或者 SELECT @变量名 = expression [ , ...n ] ;例:查询学号为j0001的学生的性别,并将值赋给变量 Declare @varsex char(2), @varsno char(8) Set @varsno=‘j0001’ Select @varsex=sex From S Where sno= @varsno;注:向变量赋值的语句不能与数据检索操作混合使用。 Declare @varsex char(2), @varsno char(8) Set @varsno=‘j0001’ Select sname, @varsex=sex 错误 From S Where sno= @varsno;3、PRINT语句 格式:PRINT 字符串,能隐式转换为字符串的变量、函数及表达式 功能:将定义的消息返回给客户端。 4、RETURN语句 格式:RETURN [ 整型表达式 ] 功能:无条件退出 应用形式: RETURN RETURN 整型表达式 RETURN (整型表达式) ;5、@@ERROR函数 功能:返回最后执行的T-SQL语句的错误代码(整型)。如果执行成功,则@@ERROR为0;若执行出现错误,则@@ERROR为实际错误的代码。 注:在sysmessages系统表中存储与@@ERROR错误代码相关的文本信息。;三、Transact-SQL控制流 1、BEGIN…END语句:将多个SQL语句组成一个语句块。 BEGIN ……SQL语句 END 2、IF…ELSE语句 IF 逻辑表达式 ……SQL语句块 [ ELSE ……SQL语句块 ] ;3、WHILE…CONTINUE…BREAK语句 while 逻辑表达式 Begin ……SQL语句 [ BREAK ] --退出while循环,执行end后的语句。 ……SQL语句 [ CONTINUE ] --结束本次循环,进入 下一次while循环。 end 例:P136例5.26;§2 存储过程 一、存储过程概述 存储过程是存储在数据库内的SQL语句和控制流语句的预编译集合。 SQL Server中的存储过程有两类: 1)系统存储过程:一般以sp_为前缀。 2)用户自定义存储过程;二、创建存储过程 CREATE PROCEDURE/PROC 存储过程名 [ @参数名 类型 [ = 默认值 ] ] [ ,…… 重复 ] AS SQL语句 GO ;例:创建存储过程ABC,根据提供的学号查询该学生姓名以及他们的选课名称及得分,当没有提供学号时,则按学号默认值‘j0401’进行查询。 CREATE PROC ABC @p_sno varchar(8)=‘j0401’ AS SELECT sname,cname,grade FROM S,SC,C WHERE S.sno=SC.sno AND C.cno=SC.cno AND S.sno=@p_sno GO;三、执行存储过程 EXECUTE/EXEC 存储过程名 [ [ @参数名 = ] 值 ] [ ,…… 重复 ] ;实例讲解 例:P158例6.10,注意返回值的获取方法。 例:P173例6.26,注意错误代码函数@@ERROR的判断与使用。

文档评论(0)

yan698698 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档