sp_copysubscription (Transact-SQL)

適用於:SQL ServerAzure SQL 受控執行個體

重要

可附加訂閱功能已被取代,未來版本將會移除。 這項功能不應用於新的開發工作。 對於使用參數化篩選進行分割的合併式發行集,我們建議使用分割快照集的新功能,以簡化大量訂閱的初始化。 如需詳細資訊,請參閱 Snapshots for Merge Publications with Parameterized Filters。 對於未分割的發行集,您可以使用備份來初始化訂閱。 如需詳細資訊,請參閱 不使用快照集初始化交易式訂閱中手動初始化訂閱。

複製具有提取訂閱,但沒有發送訂閱的訂用帳戶資料庫。 只能複製單一檔案資料庫。 這個預存程式會在訂閱資料庫的訂閱者端執行。

Transact-SQL 語法慣例

語法

  
sp_copysubscription [ @filename = ] 'file_name'  
    [ , [ @temp_dir = ] 'temp_dir' ]  
    [ , [ @overwrite_existing_file = ] overwrite_existing_file]  

引數

[ @filename = ] 'file_name' 這是指定完整路徑的字串,包括檔案名,其中儲存資料檔案複本 (.mdf) 。 檔案名 Nvarchar(260), 沒有預設值。

[ @temp_dir = ] 'temp_dir' 這是包含暫存檔案之目錄的名稱。 temp_dir Nvarchar(260), 預設值為 Null。 如果為 Null,則會使用 Microsoft SQL Server 預設資料目錄。 目錄應該有足夠的空間來保存合併所有訂閱者資料庫檔案大小的檔案。

[ @overwrite_existing_file = ] 'overwrite_existing_file'這是選擇性的布林值旗標,指定是否覆寫@filename 中所 指定之相同名稱的現有檔案。 overwrite_existing_file ,預設值為 0 。 如果 為 1 ,它會覆寫@filename 指定的 檔案,如果檔案存在則為 。 如果 為 0 ,如果檔案存在,預存程式就會失敗,而且不會覆寫檔案。

傳回碼值

0 (成功) 或 1 (失敗)

備註

sp_copysubscription 用於所有類型的複寫,將訂閱資料庫複製到檔案,作為在訂閱者端套用快照集的替代方案。 資料庫必須設定為只支援提取訂閱。 具有適當許可權的使用者可以建立訂閱資料庫的複本,然後傳送電子郵件、複製或將訂閱檔案 (.msf) 傳輸至另一個訂閱者,然後該檔案可以附加為訂用帳戶。

要複製的訂閱資料庫大小必須小於 2 GB。

只有具有用戶端訂用帳戶的資料庫才支援sp_copysubscription,而且資料庫具有伺服器訂閱時無法執行。

權限

只有系統管理員 固定伺服器角色的成員 可以執行 sp_copysubscription

另請參閱

替代快照集資料夾位置
系統預存程序 (Transact-SQL)