SET OFFSETS (Transact-SQL)

适用于: SQL Server Azure SQL 数据库 Azure SQL 托管实例

将 Transact-SQL 语句中指定关键字的偏移量(相对于语句起始点的位置)返回给 DB-Library 应用程序。

重要

在 SQL Server的未来版本中将删除此功能。 请避免在新的开发工作中使用该功能,并着手修改当前还在使用该功能的应用程序。

Transact-SQL 语法约定

语法

  
SET OFFSETS keyword_list { ON | OFF }  

参数

keyword_list
用逗号分隔的 Transact-SQL 构造列表,包括 SELECT、FROM、ORDER、TABLE、PROCEDURE、STATEMENT、PARAM 和 EXECUTE。

注解

SET OFFSETS 只用在 DB-Library 应用程序中。

SET OFFSETS 的设置是在分析时设置,而不是在执行或运行时设置。 在分析时进行设置意味着:SET 语句只要出现在批处理或存储过程中,该设置即生效,与代码执行实际上是否到达该点无关;并且 SET 语句在任何语句执行之前生效。 例如,假设 SET 语句在 IF...ELSE 语句块中,而在执行过程中从未到达过该语句块,但由于分析了 IF...ELSE 语句块,因此 SET 语句仍生效。

如果在存储过程中设置 SET OFFSETS,则从存储过程返回控制后将还原 SET OFFSETS 的值。 因此,动态 SQL 中指定的 SET OFFSETS 语句对动态 SQL 语句之后的任何语句无效。

如果 OFFSETS 选项为 ON 而且没有出现错误,则 SET PARSEONLY 返回偏移量。

权限

要求 公共 角色具有成员身份。

另请参阅

SET 语句 (Transact-SQL)
SET PARSEONLY (Transact-SQL)