適用於:SQL Server
Azure SQL 受控執行個體
本文說明如何使用 SQL Server Management Studio 或 Transact-SQL,在 SQL Server 中指定結構描述選項。 當您發行資料表或檢視表時,您可以控制針對發行之物件複寫的物件建立選項。 您可以在建立發行項時設定這些選項,而且也可以在之後變更這些選項。 如果您未明確為文章指定這些選項,系統將會定義一組預設選項。
注意
使用複寫預存程序時的預設結構描述選項,可能會與使用 SQL Server Management Studio 加入發行項時的預設選項不同。
限制事項
- 如果在建立發行集之後變更結構描述選項,則必須產生新的快照。
建議
- 如需結構描述選項的完整清單,請參閱
@schema_option和 sp_addmergearticle (Transact-SQL) 的 參數。
使用 SQL Server Management Studio
在 發行項屬性 - <發行項 對話方塊的 屬性 索引標籤上,指定結構描述選項,例如是否將條件約束與觸發程序複製到訂閱者。 此索引標籤可在「新增發佈精靈」和 「發佈屬性 - <發佈>」 對話方塊中使用。 如需使用精靈及存取對話方塊的詳細資訊,請參閱建立發行集和檢視及修改發行集屬性。
若要指定結構描述選項
在發行項頁面的「新增發行集精靈」中,或在發行集屬性 - <發行集對話方塊中,選取發行項,然後按一下發行項屬性。
選取要套用哪些文章結構描述選項變更:
按一下設定反白顯示的 <ObjectType> 發行項屬性,以開啟發行項屬性 - <ObjectName對話方塊;在此對話方塊中所做的屬性變更,只會套用至發行項頁面之物件窗格中反白顯示的物件。
按一下 [設定所有 <物件類型> 發行項的屬性] 啟動 [所有 物件類型< 發行項的屬性] 對話方塊;在這個對話方塊中所做的屬性變更,會套用至 [發行項] 頁面的物件窗格中屬於該類型的所有物件,包括尚未選取發行的物件。
注意
在 [所有 <物件類型> 發行項的屬性] 對話方塊中所做的屬性變更,會覆寫之前在 [發行項屬性 - <物件名稱>] 對話方塊中所做的任何變更。 例如,若要設定所有屬於某物件類型之發行項的一些預設值,但同時要設定個別物件的某些屬性,則請先設定所有發行項的預設值, 然後再設定個別物件的屬性。
在 發行項屬性 - 發行項 對話方塊的 屬性 索引標籤中,於 將物件與設定複製到訂閱者 和 目標物件 區段指定各選項的值。
必要時修改任何屬性,然後按一下 [確定] 。
如果您位於 出版物屬性 - <出版物> 對話方塊中,請按一下 確定 以儲存並關閉對話方塊。
使用 TRANSACT-SQL
結構描述選項會指定為十六進位值,這個值是一個或多個選項的 | (Bitwise OR) 結果。 如需詳細資訊,請參閱< sp_addarticle >和< sp_addmergearticle>。
注意
在執行位元運算之前,您必須將結構描述選項值從 binary 轉換成 int 。 如需詳細資訊,請參閱 CAST 和 CONVERT (Transact-SQL)。
在針對快照式或交易式發行集定義發行項時,指定結構描述選項
- 在發行者上的發行資料庫中,執行 sp_addarticle。 指定
@publication的發行集名稱、@article的發行項名稱、@source_object的要發行之資料庫物件、@type的資料庫物件類型,以及@schema_option的一個或多個結構描述選項的 |(位元 OR) 結果。 如需詳細資訊,請參閱 定義發行項。
在為合併式發行集定義發行項時指定結構描述選項
- 在發行集資料庫的發行者端,執行 sp_addmergearticle。 針對
@publication指定發行項所屬發行集的名稱,針對@article指定發行項的名稱,針對@source_object指定要發行的資料庫物件,並針對@schema_option指定一個或多個結構描述選項的 | (位元 OR) 運算結果。 如需詳細資訊,請參閱 定義發行項。
針對快照式或交易式發行集中的現有發行項變更結構描述選項
在發行者的發行資料庫上,執行 sp_helparticle。 針對
@publication指定發行項所屬的發行集名稱,並針對@article指定發行項名稱。 請記下結果集中schema_option資料欄的值。請使用步驟 1 中的值及所需結構描述選項值,執行 & (Bitwise AND) 作業以判斷是否選項已設定。
如果結果是 0,表示未設定此選項。
如果結果是此選項值,表示已設定此選項。
如果未設定此選項,請使用步驟 1 中的值及所要的結構描述選項值來執行 | (Bitwise OR) 運算。
在發行者端的發行集資料庫上,執行 sp_changearticle。 針對
@publication指定發行項所屬的發行集名稱、針對@article指定發行項名稱、針對schema_option指定@property的值,並針對@value指定步驟 3 中的十六進位結果。執行快照集代理程式來產生新的快照集。 如需詳細資訊,請參閱 建立和套用初始快照集。
變更合併發行中現有發行項的結構描述選項
在發行者的發行資料庫中,執行 sp_helpmergearticle。 針對
@publication指定發行項所屬的發行集名稱,並針對@article指定發行項名稱。 請記下結果集中 schema_option 資料行的值。請使用步驟 1 中的值及所需結構描述選項值,執行 & (Bitwise AND) 作業以判斷是否選項已設定。
如果結果是 0,表示未設定此選項。
如果結果是此選項值,表示已設定此選項。
如果未設定此選項,請使用步驟 1 中的值及所要的結構描述選項值來執行 | (Bitwise OR) 運算。
在發行者上的發行資料庫中,執行 sp_changemergearticle。 針對
@publication指定發行項所屬的發行集名稱、針對@article指定發行項名稱、針對schema_option指定@property的值,並針對@value指定步驟 3 中的十六進位結果。執行快照集代理程式來產生新的快照集。 如需詳細資訊,請參閱 建立和套用初始快照集。