使用 SQL Server 中的選項

Microsoft SQL Server 2005 提供了可影響 SQL 陳述式之結果與效能的選項。您可以透過下列方式來設定這些選項:

  • 若要設定執行個體層級的組態選項,請使用 sp_configure 預存程序。
  • 若要設定資料庫層級的選項,請使用 ALTER DATABASE 陳述式。
  • 若要設定資料庫相容性層級,請使用 sp_dbcmptlevel 預存程序。
  • 若要指定批次層級的選項 (SET 選項),請使用 SET 陳述式 (例如 SET ANSI_PADDING 和 SET ANSI_NULLS)。
    ms191203.note(zh-tw,SQL.90).gif附註:
    在舊版的 SQL Server 中以及已停用 Multiple Active Result Sets (MARS) 的連接中,批次層級的選項是指連接層級的選項。
  • 若要指定陳述式層級的選項,如查詢提示、資料表提示與聯結提示,請使用個別的 Transact-SQL 陳述式。如需詳細資訊,請參閱<提示 (Transact-SQL)>。

ODBC 應用程式可以指定控制某些 ANSI SET 選項的連線選項。依預設,SQL Native Client OLE DB Provider for SQL Server 與 SQL Native Client ODBC 驅動程式會設定數個 SET 選項。

您應避免變更 SET 選項,以及透過 SET 陳述式設定這些選項。建議您透過 ODBC 或 OLE DB 的連接屬性,在連接層級上設定 SET 選項。此外,您可以使用 sp_configure 預存程序來變更 SET 選項設定。

sp_configure 提供選項 user options。這可讓您變更一些 SET 選項的預設值。雖然使用者選項看似執行個體選項,但是使用者選項其實是 SET 選項。

選項的階層

若選項在多個層級上都受支援,則會以下列階層為準:

  1. 資料庫選項會覆寫執行個體選項。
  2. SET 選項會覆寫資料庫選項。
  3. 提示 (Hint) 會覆寫 SET 選項。
ms191203.note(zh-tw,SQL.90).gif附註:
在動態 SQL 批次中設定的 SET 選項,其影響範圍僅限於該批次。
ms191203.note(zh-tw,SQL.90).gif附註:
QUOTED_IDENTIFIER 與 ANSI_NULLS 之類的 SET 選項,會隨預存程序定義而保留,因此會優先於其他為它們明確設定的值。

請參閱

概念

SET 選項
資料庫選項
執行個體選項
資料庫相容性層級選項

說明及資訊

取得 SQL Server 2005 協助