批处理

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

批处理
批处理是包含一个或多个 Transact-SQL 语句的组,从应用程序一次性地发送到Microsoft® SQL Server™ 执行。

SQL Server 将批处理语句编译成一个可执行单元,此单元称为执行计划。

执行计划中的语句每次执行一条。

编译错误(如语法错误)使执行计划无法编译,从而导致批处理中的任何语句均无法执行。

运行时错误(如算术溢出或违反约束)会产生以下两种影响之一:∙大多数运行时错误将停止执行批处理中当前语句和它之后的语句。

∙少数运行时错误(如违反约束)仅停止执行当前语句。

而继续执行批处理中其它所有语句。

在遇到运行时错误之前执行的语句不受影响。

唯一的例外是如果批处理在事务中而且错误导致事务回滚。

在这种情况下,回滚运行时错误之前所进行的未提交的数据修改。

假定在批处理中有 10 条语句。

如果第五条语句有一个语法错误,则不执行批处理中的任何语句。

如果编译了批处理,而第二条语句在执行时失败,则第一条语句的结果不受影响,因为它已经执行。

以下规则适用于批处理:
∙CREATE DEFAULT、CREATE PROCEDURE、CREATE RULE、CREATE TRIGGER 和CREATE VIEW 语句不能在批处理中与其它语句组合使用。

批处理必须以
CREATE 语句开始。

所有跟在该批处理后的其它语句将被解释为第一个
CREATE 语句定义的一部分。

∙不能在同一个批处理中更改表,然后引用新列。

∙如果 EXECUTE 语句是批处理中的第一句,则不需要 EXECUTE 关键字。

如果 EXECUTE 语句不是批处理中的第一条语句,则需要 EXECUTE 关键字。

相关文档
最新文档