说出你的故事马伊利:T-SQL中的begin end分块语句 - 泥香的日志 - 网易博客

来源:百度文库 编辑:九乡新闻网 时间:2024/10/06 00:02:10

T-SQL中的begin end分块语句

数据库学习 2009-06-19 13:32:34 阅读342 评论1   字号: 订阅

转自:http://blog.sina.com.cn/s/blog_5df404110100dhjz.html

Begin

...

End

之间的是一个语句块,一般Begin...End用在

while

if等语句中

在T_SQL中,if/while后只能紧跟一条sql语句,如果有多条则应该用Begin..end包含起来

如:

if (@int > 9)

set @int = 1

else

set @int = 0

这里的if后面只把变量@int设为1,没有其它的操作,所以这里可以省去begin..end

但如果有多条,如

if(@int > 9)

begin

set @int = 1

select * from tablename

end

这里就必须用begin..end

否则

select语句就永远都会被执行一次

 

包括一系列的 Transact-SQL 语句,使得可以执行一组 Transact-SQL 语句。BEGIN 和 END 是控制流语言的关键字。

语法

BEGIN

     {

        sql_statement

        | statement_block

     }

END

参数

{ sql_statement | statement_block }

是任何有效的 Transact-SQL 语句或以语句块定义的语句分组。

注释

BEGIN...END 语句块允许嵌套。

虽然所有的 Transact-SQL 语句在 BEGIN...END 块内都有效,但有些 Transact-SQL 语句不应组合在同一个批处理(语句块)中。有关更多信息,请参见批处理和所用的各个语句。

示例

在本例中,BEGIN 和 END 定义一系列一起执行的 Transact-SQL 语句。如果没有包括 BEGIN...END 块,IF 条件仅使 ROLLBACK TRANSACTION 执行并且不返回打印信息。

USE pubs GO CREATE TRIGGER deltitle ON titles FOR delete AS IF     (SELECT COUNT(*) FROM deleted, sales        WHERE sales.title_id = deleted.title_id) > 0     BEGIN        ROLLBACK TRANSACTION        PRINT 'You can't delete a title with sales.' END

T-SQL中的begin end分块语句 - 泥香的日志 - 网易博客 【特别奉献】动画题图三格分块精致边框(原创) - 雁飞墨行的日志 - 网易博客 经典语句 - 理睬的日志 - 网易博客 宽屏风光壁纸(180P·第9集·END) - 空空如也的日志 - 网易博客 马云给正在奋斗中的人的经典语句 - 悠远的天空的日志 - 网易博客 引用 妙语连珠!马云给正在奋斗中的人的经典语句 - 悠远的天空的日志 - 网易博客 Linq to SQL 的更新冲突与管理 - 陀螺的日志 - 网易博客 Linq to sql的“预备知识 ” - TIM的日志 - 网易博客 《百万书库中国现代文学》[O-T] - 香儿的日志 - 网易博客 LINQ to SQL更新数据库操作 - ludapeng615的日志 - 网易博客 sql语句的编写 - 解决方案 SQL语句 SQL语句 五十年后,地球上最强大的五个国家都是谁? - t.runkun.t的日志 - 网易博客 随机提取Access/SqlServer数据库中的10条记录的SQL语句 【两性】) - 风中的雨的日志 - 网易博客 风中的蔷薇 - 小鱼儿的日志 - 网易博客 女人心目中的老公 -- 粉色寂寞的日志 - 网易博客 传说中的花语 - 小鱼儿的日志 - 网易博客 古人性爱中的七损八益 - coolyun的日志 - 网易博客 一个韩国人心目中的中国 - 金宰贤的日志 - 网易博客 传说中的中国古代十大妖兽 - 温柔细雨的日志 - 网易博客 风中的思念 - 老排长的日志 - 网易博客 《圣经》中的“哭”与“笑” - sanxian3000的日志 - 网易博客