共用方式為


sp_attach_single_file_db (Transact-SQL)

更新: 2005 年 12 月 5 日

將只有一個資料檔的資料庫附加至目前的伺服器。sp_attach_single_file_db 不能搭配多個資料檔來使用。

ms174385.note(zh-tw,SQL.90).gif重要事項:
未來的 Microsoft SQL Server 發行版本將不再提供此功能。請避免在新的開發工作中使用此功能,並計劃修改目前使用此功能的應用程式。 建議您改用 CREATE DATABASE database_name FOR ATTACH。如需詳細資訊,請參閱<CREATE DATABASE (Transact-SQL)>。請勿在複寫資料庫上使用此程序。
ms174385.security(zh-tw,SQL.90).gif安全性注意事項:
建議您不要附加或還原來源不明或來源不受信任的資料庫。這種資料庫可能包含惡意程式碼,因此可能執行非預期的 Transact-SQL 程式碼,或是修改結構描述或實體資料庫結構而造成錯誤。使用來源不明或來源不受信任的資料庫之前,請先在非實際伺服器中的資料庫上執行 DBCC CHECKDB,同時檢查資料庫中的程式碼,例如預存程序或其他使用者自訂程式碼。

主題連結圖示Transact-SQL 語法慣例

語法

sp_attach_single_file_db [ @dbname= ] 'dbname'
        , [ @physname= ] 'physical_name'

引數

  • [ @dbname= ] 'dbname'
    這是要附加至伺服器的資料庫名稱。這個名稱必須是唯一的。dbnamesysname,預設值是 NULL。
  • [ @physname= ] 'physical_name'
    這是資料庫檔案的實體名稱,其中包括路徑。physical_namenvarchar(260),預設值是 NULL。

    ms174385.note(zh-tw,SQL.90).gif附註:
    這個引數對應到 CREATE DATABASE 陳述式的 FILENAME 參數。如需詳細資訊,請參閱<CREATE DATABASE (Transact-SQL)>。

    在 Microsoft SQL Server 2005 Database Engine 中,所附加之資料庫中的任何全文檢索檔案,都會隨著資料庫而一起附加。若要指定全文檢索目錄的新路徑,您可以提供一個不含檔案名稱的目錄名稱來指定目錄檔。如需詳細資訊,請參閱<附加與卸離全文檢索目錄>。

傳回碼值

0 (成功) 或 1 (失敗)

結果集

備註

只對先前使用明確的 sp_detach_db 作業從伺服器上卸離的資料庫使用 sp_attach_single_file_db,或對已複製的資料庫使用它。

sp_attach_single_file_db 只適用於有單一記錄檔的資料庫。當 sp_attach_single_file_db 將資料庫附加至伺服器時,它會建立一個新的記錄檔。如果資料庫是唯讀的,就會在先前的位置建立記錄檔。

ms174385.note(zh-tw,SQL.90).gif附註:
無法卸離或附加資料庫快照集。

請勿在複寫資料庫上使用此程序。

權限

如需有關附加資料庫時如何處理權限的資訊,請參閱<CREATE DATABASE (Transact-SQL)>。

範例

下列範例會卸離 AdventureWorks,再從 AdventureWorks 中,將一個檔案附加至目前的伺服器。

USE master;
GO
EXEC sp_detach_db @dbname = 'AdventureWorks';
EXEC sp_attach_single_file_db @dbname = 'AdventureWorks', 
    @physname = N'C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Data\AdventureWorks_Data.mdf';

請參閱

參考

sp_detach_db (Transact-SQL)
sp_helpfile (Transact-SQL)
系統預存程序 (Transact-SQL)

其他資源

卸離和附加資料庫
附加與卸離全文檢索目錄
保護資料和記錄檔

說明及資訊

取得 SQL Server 2005 協助

變更歷程記錄

版本 歷程記錄

2005 年 12 月 5 日

新增內容:
  • 新增「安全性注意事項」。