資料庫選項
下表提供 Microsoft SQL Server 中支援的資料庫選項及對應的 SET 與伺服器選項的清單 (按字母排列)。
資料庫選項 |
SET 選項 |
伺服器 選項 |
預設值 設定 |
---|---|---|---|
ANSI_NULL_DEFAULT |
ANSI_NULL_DFLT_ON ANSI_NULL_DFLT_OFF |
使用者選項指派預設值。 |
OFF |
ANSI_NULLS |
ANSI_NULLS |
使用者選項指派預設值。 |
OFF |
ANSI_WARNINGS |
ANSI_WARNINGS |
使用者選項指派預設值。 |
OFF |
AUTO_CREATE_STATISTICS |
無 |
無 |
ON |
AUTO_UPDATE_STATISTICS |
無 |
無 |
ON |
AUTO_CLOSE |
無 |
無 |
FALSE1 |
AUTO_SHRINK |
無 |
無 |
FALSE |
CONCAT_NULL_YIELDS_NULL |
CONCAT_NULL_YIELDS_NULL |
無 |
OFF |
CURSOR_CLOSE_ON_COMMIT |
CURSOR_CLOSE_ON_COMMIT |
使用者選項指派預設值。 |
OFF |
RESTRICTED_USER |
無 |
無 |
FALSE |
CURSOR_DEFAULT_LOCAL |
無 |
無 |
FALSE |
MERGE PUBLISH |
無 |
無 |
FALSE |
OFFLINE |
無 |
無 |
FALSE |
PUBLISHED |
無 |
無 |
FALSE |
QUOTED_IDENTIFIER |
QUOTED_IDENTIFIER |
使用者選項指派預設值。 |
OFF |
READ_ONLY |
無 |
無 |
FALSE |
RECURSIVE_TRIGGERS |
無 |
無 |
FALSE |
RECOVERY BULK_LOGGED |
無 |
無 |
FALSE |
SINGLE_USER |
無 |
無 |
FALSE |
SUBSCRIBED |
無 |
無 |
TRUE |
TORN_PAGE_DETECTION |
|
無 |
TRUE |
RECOVERY SIMPLE |
無 |
無 |
TRUE |
1 依預設,在 SQL Server 2005 Express Edition 中,AUTO_CLOSE 是設為 TRUE。
新的資料庫之預設資料庫選項,是那些在 model 資料庫中定義的選項。若要查看 model 資料庫的預設值,請參閱<model 資料庫>。
變更資料庫選項,會強制對快取區中的一切進行重新編譯。
選項與資料庫內容
指令碼的資料庫內容與指令碼中的批次是由最新的連線來決定。利用 Transact-SQL 中的 USE 陳述式,以及其他環境 (例如 ODBC 和 OLE DB) 中隱含和明確的方法,可以明確地設定連接。如需詳細資訊,請參閱<選取資料庫>。
從批次或另一個預存程序執行預存程序時,會以儲存該程序的資料庫之選項設定值來執行預存程序。例如,當預存程序 db1.dbo.sp1 呼叫預存程序 db2.dbo.sp2 時,sp1 會在 db1 目前的相容性層級執行,sp2 則會在 db2 目前的相容性層級執行。
當 Transact-SQL 陳述式參考多重資料庫中的物件時,目前的資料庫內容和目前的連接內容會套用到這個陳述式。