這些 ANSI (ISO) 標準 SET 選項會在使用者查詢、執行中的觸發程式或預存程式期間定義查詢處理環境。 不過,這些SET選項不包含符合 ISO 標準所需的所有選項。 使用此頁面來指定Microsoft SQL Server 將會使用 ISO 標準中指定的所有或部分設定來執行查詢。 這些選項的變更只會套用至新的 SQL Server 查詢。 若要變更目前查詢的選項,請單擊 [查詢] 功能表上的 [查詢選項],或在 [SQL Server 查詢] 視窗中單擊滑鼠右鍵,然後選取 [查詢選項]。 在 [ 查詢選項] 對話方塊的 [ 執行] 底下,按兩下 [ANSI]。
UI 元素清單
SET ANSI_DEFAULTS
選取此複選框以選取所有預設 ISO 設定。 預設不會選取所有 ISO 選項。
SET QUOTED_IDENTIFIER
選取此複選框時,SQL Server 會遵循 ISO 規則,使用引號來分隔標識符和字面字串。 以引號分隔的標識碼可以是 Transact-SQL 保留關鍵詞,也可以包含標識碼 Transact-SQL 語法規則通常不允許的字元。 預設會選取此核取方塊。
設定 ANSI_NULL_DFLT_ON
設定此值時,在 CREATE TABLE 或 ALTER TABLE 語句期間未明確定義為 NOT NULL 的所有使用者定義資料類型或數據行預設為允許 Null 值。 預設會選取此核取方塊。
SET IMPLICIT_TRANSACTIONS
選取此複選框時,SET IMPLICIT_TRANSACTIONS會將連線設定為隱含交易模式。 當清除此核取方塊時,它會將連接恢復為自動提交交易模式。 若要檢閱選取時啟動隱含交易的語句,請參閱 SET IMPLICIT_TRANSACTIONS (Transact-SQL) 。 預設會清除此複選框。
設定 CURSOR_CLOSE_ON_COMMIT
選取此複選框時,當交易提交時,任何開啟的游標都會自動關閉(符合 ISO 規範)。 當此值設定為 OFF 時,游標會跨越交易邊界保持開啟,只有在連接關閉或明確關閉時才會關閉。 預設會清除此複選框。
SET ANSI_PADDING
控制數據行儲存值名稱比數據行定義大小短的方式,以及數據行儲存在 char、 varchar、 binary和 varbinary 數據中具有尾端空白的值的方式。 此設定只會影響新資料行的定義。 建立數據行之後,SQL Server 會根據建立數據行時的設定來儲存值。 現有的欄不會受到此設定的後續更改所影響。 預設會選取此核取方塊。
SET ANSI_WARNINGS
指定針對數個錯誤條件的 ISO 標準行為。
選取此複選框時,如果匯總函數中出現 Null 值(例如 SUM、AVG、MAX、MIN、STDEV、STDEVP、VAR、VARP 或 COUNT),就會產生警告訊息。 當 OFF 時,不會發出任何警告。
取消勾選此複選框時,除以零和算術溢位錯誤會導致語句被回復並產生錯誤訊息。 當 OFF 時,除以零和算術溢位錯誤會導致傳回 Null 值。 當在 字元、Unicode 或 二進位 資料行上進行 INSERT 或 UPDATE 操作,而新值的長度超過了資料行的最大限制時,會因為零除或算術溢位錯誤而返回空值的行為。 如果 SET ANSI_WARNINGS為 ON,則會取消 INSERT 或 UPDATE 作業,如 ISO 標準所指定。 字元欄位會忽略尾端空白,而二進位欄位會忽略尾端空值。 當關閉時,數據會截斷為欄位的大小,且語句執行成功。
預設會選取此核取方塊。
SET ANSI_NULLS
- 指定當等於(=)和不等於(<>)比較運算子用於 Null 值時的 ISO 相容行為。 選取 SET ANSI_NULLS時,所有與 Null 值的比較都會評估為 UNKNOWN,這是符合 ISO 規範的行為。 如果未選取 SET ANSI_NULLS,則所有數據與 Null 值的比較會評估為 TRUE。 預設會選取此核取方塊。
重設為預設值
將此頁面上的所有值重設為原始預設值。