- 热门文章:
- · 给存储过程传值
- · 从存储过程中获得值
- · 在存储过程中使用RETURN语句
- · 给变量赋值
- · 在屏幕上显示数据
- · 注释你的SQL语句
- · 使用RETURN语句从批处理中返回
- · 把语句组入到事务中
- · 使用存储过程
- · 使用SQL Enterprise Manager 创建存储过程
- · 使用触发器
- · 使用SQL Enterprise Manager创建触发器
Transact
Transact-SQL编程
在下面部分的许多语句都不是SQL标准语句,而是一个叫做Transact-SQL(T-SQL)的SQL扩展的一部分。T-SQL通过在别的事物上添加一些诸如变量、条件和循环之类的传统编程元素来扩充SQL。
你可能注意到这个问题的唯一原因是你计划使用一种和Microsoft SQL Server不同的数据库服务器。在下面部分介绍的语句和技术并不是所有都是可替换的。然而,如果你想全面的利用Microsoft SQL Server的性能,你必须使用T-SQL。
在批处理中执行多个语句
为了一次能够执行多个SQL语句,你可以把它们一起放入一个批处理中。批处理,如同它的名字所隐含的意识一样,是简单的一个或多个SQL语句组成的语句组。比如,假如你在ISQL/w中输入下面的两个语句,它们就会做为一个批处理而一起执行:
SELECT pub_name FROM publishers
SELECT pub_name FROM publishers
当你执行上面那个简单的批处理时,在表中同样的数据被读取了两次---一个SELECT 语句读取一次。现在假设你输错了第二个SELECT语句中表的名称,并尝试执行下面的语句:
SELECT pub_name FROM publishers
SELECT ub_name FROM publishers
你可能期望第一个语句能够成功执行,而在执行第二个语句时会发生错误。而实际上并不是这样,在大多数情况下,如果在批处理中有任何一个语句不能成功执行。在其中没有一个语句会执行(特殊情况请看下面的注意)。SQL Server 把在批处理中的语句当成组来看待。
注意
在一些情况下,一个语句在发生错误时,其他语句仍然能够执行。假如服务器在传递和编译一个批处理时检测到错误,则在批处理中的所有语句都不能执行。假如批处理通过了编译但仍然存在错误,则在其中的某些语句就可能会执行。你可以把一组语句分成隔离的批处理。在ISQL/w中,你可以使用命令GO来实现该功能。考察下面的语句:
SELECT pub_name FROM publishers
GO
SELECT ub_name FROM publishers
假如你在ISQL/w中执行上面的语句。即使在第二个SELECT语句中存在错误。第一个语句仍然能够成功地返回答案集。GO命令强迫SQL Server 将此二个语句看成两个批处理。
- · 使用Inserted和Deleted表
- · 结合触发器和事务处理
- · 使用计划任务
- · Active Server Pages可以做什么
- · Active Server Pages是怎样工作的
- · 在Active Server Pages中结合Scripts脚本
- · 在Active Server Pages中结合对象和组件
- · 设置Active Server Pages以及常见问题
- · 利用缓存输出
- · 处理运行时间长的脚本以及内容大的主页
- · 处理主页的Headers
- · Active Server Pages是怎样工作的?
- · 在这章中
- · Form集合多个内容的处理显示
- · FORM的域对应多值的处理
- · Text Area的处理
- · 在这章中
- · 接受一个Query字段
- · 对Query字段进行Encode操作
- · 多参数以及多值的Query字段处理
- · 将QueryString集合所有参数一并输出
- · 什么情况下不要使用Query字段
- · 重引导用户到另一个主页位置
- · Active Server Pages是怎样工作的?
- · 在这章中
- · Sessions的使用和处理
- · Session的内容
- · Session结束的控制
- · Sessions事件
- · Session是怎样工作的
- · Active Server Pages是怎样工作的?
- · 在这章里面
- · 使用Application对象
- · 全部显示Application对象
- · Application事件
- · 聊天室应用
- · 创建聊天室主页
- · 修改Global
