分享方式:


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。

備註

只有在 DB-Library 應用程式中,才會使用 SET OFFSETS。

SET OFFSETS 的設定是在剖析階段進行設定,而不是在執行階段進行設定。 在剖析階段進行設定意謂著,如果 SET 陳述式在批次或預存程序中,不論程式碼是否實際執行到這一點,設定都會生效;SET 陳述式會在執行任何陳述式之前生效。 例如,即使 SET 陳述式是在永遠不會執行到的 IF...ELSE 陳述式區塊中,SET 陳述式仍會生效,因為會剖析 IF...ELSE 陳述式區塊。

如果 SET OFFSETS 設在預存程序中,從預存程序傳回控制權之後,會還原 SET OFFSETS 的值。 因此,動態 SQL 中所指定的 SET OFFSETS 陳述式完全不會影響在動態 SQL 陳述式之後的任何陳述式。

如果 OFFSETS 選項是 ON,或未發生任何錯誤,SET PARSEONLY 會傳回位移。

權限

需要 public 角色的成員資格。

另請參閱

SET 陳述式 (Transact-SQL)
SET PARSEONLY (Transact-SQL)