sp_addarticle (Transact-SQL)

Bir makale oluşturur ve ekler bir yayın.Bu saklı yordam, yayın veritabanı üzerinde yayımcı adresindeki yürütülür.

Konu bağlantısı simgesiTransact-sql sözdizimi kuralları

Sözdizimi

sp_addarticle [ @publication = ] 'publication' 
        , [ @article = ] 'article' 
    [ , [ @source_table = ] 'source_table' ]
    [ , [ @destination_table = ] 'destination_table' ] 
    [ , [ @vertical_partition = ] 'vertical_partition' ] 
    [ , [ @type = ] 'type' ] 
    [ , [ @filter = ] 'filter' ] 
    [ , [ @sync_object= ] 'sync_object' ] 
        [ , [ @ins_cmd = ] 'ins_cmd' ] 
    [ , [ @del_cmd = ] 'del_cmd' ] 
        [ , [ @upd_cmd = ] 'upd_cmd' ] 
    [ , [ @creation_script = ] 'creation_script' ] 
    [ , [ @description = ] 'description' ] 
    [ , [ @pre_creation_cmd = ] 'pre_creation_cmd' ] 
    [ , [ @filter_clause = ] 'filter_clause' ] 
    [ , [ @schema_option = ] schema_option ] 
    [ , [ @destination_owner = ] 'destination_owner' ] 
    [ , [ @status = ] status ] 
    [ , [ @source_owner = ] 'source_owner' ] 
    [ , [ @sync_object_owner = ] 'sync_object_owner' ] 
    [ , [ @filter_owner = ] 'filter_owner' ] 
    [ , [ @source_object = ] 'source_object' ] 
    [ , [ @artid = ] article_ID  OUTPUT ] 
    [ , [ @auto_identity_range = ] 'auto_identity_range' ] 
    [ , [ @pub_identity_range = ] pub_identity_range ] 
    [ , [ @identity_range = ] identity_range ] 
    [ , [ @threshold = ] threshold ] 
    [ , [ @force_invalidate_snapshot = ] force_invalidate_snapshot ]
    [ , [ @use_default_datatypes = ] use_default_datatypes
    [ , [ @identityrangemanagementoption = ] identityrangemanagementoption ]
    [ , [ @publisher = ] 'publisher' ]
    [ , [ @fire_triggers_on_snapshot = ] 'fire_triggers_on_snapshot' ] 

Bağımsız değişkenler

  • [ @publication = ] 'publication'
    İçeren yayın adı makale.The name must be unique in the database.publication is sysname, with no default.

  • [ @article = ] 'article'
    Adı makale.The name must be unique within the publication.article is sysname, with no default.

  • [ @source_table = ] 'source_table'
    Bu parametre onaylanmaz; kullanın source_object bunun yerine.

    Bu parametre yalnızca geriye dönük uyumluluk için desteklenir SQL Server 6.5.Bu parametre, Oracle yayımcılar için desteklenmiyor.

  • [ @destination_table = ] 'destination_table'
    Is the name of the destination (subscription) table, if different from source_tableor the stored procedure.destination_table is sysname, with a default of NULL, which means that source_table equals destination_table*.*

  • [ @vertical_partition = ] 'vertical_partition'
    Enables and disables column filtering on a table article.vertical_partition is nchar(5), with a default of FALSE.

    yanlış dikey filtreleme gösterir ve tüm sütunları yayımlar.

    doğru tüm sütunları birincil anahtar dışında hiçbir varsayılan ile Null olabilecek sütunları ve benzersiz anahtar sütunları temizler.Sütunları kullanarak eklenen sp_articlecolumn.

  • [ @type = ] 'type'
    Is the type of article.type is sysname, and can be one of the following values.

    Değer

    Açıklama

    toplu şema

    Toplama işlev yalnızca şema ile.

    işlev şema

    İşlev yalnızca şema ile.

    dizinli görünüm logbased

    dizinli görünüm günlük tabanlı makale.Oracle yayımcılar için desteklenmiyor.Bu makale türü için temel tablo ayrı olarak yayımlanmasına gerek yoktur.

    dizinli görünüm logbased manualboth

    El ile filtre ve el ile görünümü ile günlük tabanlı dizinli görünüm makale.Bu seçenek, hem de belirtmenizi gerektirir sync_object ve filter parametreleri.Bu makale türü için temel tablo ayrı olarak yayımlanmasına gerek yoktur.Oracle yayımcılar için desteklenmiyor.

    dizinli görünüm logbased manualfilter

    El ile filtre ile dizinli görünüm günlük tabanlı makale.Bu seçenek, hem de belirtmenizi gerektirir sync_object ve filter parametreleri.Bu makale türü için temel tablo ayrı olarak yayımlanmasına gerek yoktur.Oracle yayımcılar için desteklenmiyor.

    dizinli görünüm logbased manualview

    El ile görünümü ile günlük tabanlı dizinli görünüm makale.Bu seçenek, belirtmenizi gerektirir sync_object parametresi.Bu makale türü için temel tablo ayrı olarak yayımlanmasına gerek yoktur.Oracle yayımcılar için desteklenmiyor.

    dizinli görünüm şema

    Dizin oluşturulmuş görünüm yalnızca şema ile.Bu tür makale, temel tablo da yayımlanması gerekir.

    logbased (varsayılan)

    Günlük tabanlı makale.

    logbased manualboth

    El ile filtre ve el ile görünümü ile günlük tabanlı makale.Bu seçenek, hem de belirtmenizi gerektirir sync_object ve filter parametreleri.Oracle yayımcılar için desteklenmiyor.

    logbased manualfilter

    El ile filtre ile günlük tabanlı makale.Bu seçenek, hem de belirtmenizi gerektirir sync_object ve filter parametreleri.Oracle yayımcılar için desteklenmiyor.

    logbased manualview

    El ile görünümü ile günlük tabanlı makale.Bu seçenek, belirtmenizi gerektirir sync_object parametresi.Oracle yayımcılar için desteklenmiyor.

    yordam exec

    Saklı yordam yürütme tüm abonelere kopyalar makale.Oracle yayımcılar için desteklenmiyor.Bu seçeneği kullanmanızı öneririz seri hale getirilebilir yordam exec yerine yordam exec.Daha fazla bilgi için bkz: "Türleri, saklı yordamı yürütme makaleleri" bölümü in İşlem çoğaltma yayımlama saklı yordamı yürütme.

    proc şema

    Yordam yalnızca şema ile.Oracle yayımcılar için desteklenmiyor.

    seri hale getirilebilir yordam exec

    Yürütülmesini çoğaltır saklı yordam , yalnızca seri hale getirilebilir bir işlem bağlamında yürütülür.Oracle yayımcılar için desteklenmiyor.

    Yalnızca Görünüm şema

    Yalnızca şema ile görüntüleyin.Oracle yayımcılar için desteklenmiyor.Bu seçeneği kullanırken, temel tablo da yayımlamanız gerekir.

  • [ @filter = ] 'filter'
    Is the stored procedure (created with FOR REPLICATION) used to filter the table horizontally.filter is nvarchar(386), with a default of NULL.sp_articleview and sp_articlefilter must be executed manually to create the view and filter stored procedure.null, filtre yordamını değil oluşturulur (saklı yordam el ile oluşturulan varsayar).

  • [ @sync_object = ] 'sync_object'
    Is the name of the table or view used for producing the data file used to represent the snapshot for this article.sync_object is nvarchar(386), with a default of NULL.BOŞ ise, sp_articleview otomatik olarak çıkış dosyası oluşturmak için kullanılan görünümü oluşturmak için verilir.Tüm sütunları ile ekledikten sonra böyle sp_articlecolumn.BOŞ değil ise, bir görünüm değil oluşturulan (Görünüm el ile oluşturulan varsayar).

  • [ @ins_cmd = ] 'ins_cmd'
    Is the replication command type used when replicating inserts for this article.ins_cmd is nvarchar(255), and can be one of the following values.

    Değer

    Açıklama

    HİÇBİRİ

    Hayır eylem alınır.

    Çağrı sp_MSins_tablo (varsayılan)

    - veya -

    Çağrı custom_stored_procedure_name

    Aramaları bir saklı yordam Abone tarafında yürütülecek.To use this method of replication, use schema_option to specify automatic creation of the stored procedure, or create the specified stored procedure in the destination database of each Subscriber of the article.custom_stored_procedure is the name of a user-created stored procedure.sp_MSins_table contains the name of the destination table in place of the _table part of the parameter.Zaman destination_owner belirtilen, e için hedef tablo adı.Örneğin ProductCategory tablo sahibi Üretim şema abone adresindeki parametresi olacak CALL sp_MSins_ProductionProductCategory.Bir eşler arası çoğaltma topolojisi makale için _table eklenmiş bir GUID değeri.Belirtme custom_stored_procedure desteklenmez güncelleştirme aboneleri.

    sql veya null

    INSERT deyim çoğaltır.INSERT deyim makale yayımlanmış tüm sütunlar için değerleri sağlanmıştır.Bu komut ekler üzerinde çoğaltılır:

    INSERT INTO <table name> VALUES (c1value, c2value, c3value, ..., cnvalue)

    Daha fazla bilgi için bkz: Değişiklikleri için işlemsel makaleleri nasıl yayılma belirtme.

  • [ @del_cmd =] 'del_cmd'
    Is the replication command type used when replicating deletes for this article.del_cmd is nvarchar(255), and can be one of the following values.

    Değer

    Açıklama

    HİÇBİRİ

    Hayır eylem alınır.

    CALLsp_MSdel_table (default)

    - veya -

    Çağrı custom_stored_procedure_name

    Aramaları bir saklı yordam Abone tarafında yürütülecek.To use this method of replication, use schema_option to specify automatic creation of the stored procedure, or create the specified stored procedure in the destination database of each Subscriber of the article.custom_stored_procedure is the name of a user-created stored procedure.sp_MSdel_table contains the name of the destination table in place of the _table part of the parameter.Zaman destination_owner belirtilen, e için hedef tablo adı.Örneğin ProductCategory tablo sahibi Üretim şema abone adresindeki parametresi olacak CALL sp_MSdel_ProductionProductCategory.Bir eşler arası çoğaltma topolojisi makale için _table eklenmiş bir GUID değeri.Belirtme custom_stored_procedure desteklenmez güncelleştirme aboneleri.

    xcall sp_MSdel_tablo

    - veya -

    xcall custom_stored_procedure_name

    Aramaları bir saklı yordam xcall stil parametreleri alma.Bu çoğaltma yöntem kullanmak için schema_option otomatik olarak oluşturulmasını belirtmek için saklı yordam, veya belirtilen saklı yordam hedef veritabanındaki her abone makale.Kullanıcı tarafından oluşturulan bir saklı yordam belirterek aboneleri güncelleştirmek için izin verilmez.

    sql veya null

    delete deyim çoğaltır.delete deyim sağlanan tüm birincil anahtar sütun değerler.Bu komut üzerinde siler çoğaltılır:

    DELETE FROM <table name> WHERE pkc1 = pkc1value AND pkc2 = pkc2value AND pkcn = pkcnvalue

    Daha fazla bilgi için bkz: Değişiklikleri için işlemsel makaleleri nasıl yayılma belirtme.

  • [ @upd_cmd =] 'upd_cmd'
    Is the replication command type used when replicating updates for this article.upd_cmd is nvarchar(255), and can be one of the following values.

    Değer

    Açıklama

    HİÇBİRİ

    Hayır eylem alınır.

    Sp_MSupd_ calltablo

    - veya -

    Çağrı custom_stored_procedure_name

    Aramaları bir saklı yordam Abone tarafında yürütülecek.Bu çoğaltma yöntem kullanmak için schema_option otomatik olarak oluşturulmasını belirtmek için saklı yordam, veya belirtilen saklı yordam hedef veritabanındaki her abone makale.

    mcall sp_MSupd_tablo

    - veya -

    mcall custom_stored_procedure_name

    Aramaları bir saklı yordam mcall stil parametreleri alma.To use this method of replication, use schema_option to specify automatic creation of the stored procedure, or create the specified stored procedure in the destination database of each Subscriber of the article.custom_stored_procedure is the name of a user-created stored procedure.sp_MSupd_table contains the name of the destination table in place of the _table part of the parameter.Zaman destination_owner belirtilen, e için hedef tablo adı.Örneğin ProductCategory tablo sahibi Üretim şema abone adresindeki parametresi olacak MCALL sp_MSupd_ProductionProductCategory.Bir eşler arası çoğaltma topolojisi makale için _table eklenmiş bir GUID değeri.Kullanıcı tarafından oluşturulan bir saklı yordam belirterek aboneleri güncelleştirmek için izin verilmez.

    scall sp_MSupd_tablo (varsayılan)

    - veya -

    scall custom_stored_procedure_name

    Aramaları bir saklı yordam scall stil parametreleri alma.To use this method of replication, use schema_option to specify automatic creation of the stored procedure, or create the specified stored procedure in the destination database of each Subscriber of the article.custom_stored_procedure is the name of a user-created stored procedure.sp_MSupd_table contains the name of the destination table in place of the _table part of the parameter.Zaman destination_owner belirtilen, e için hedef tablo adı.Örneğin ProductCategory tablo sahibi Üretim şema abone adresindeki parametresi olacak SCALL sp_MSupd_ProductionProductCategory.Bir eşler arası çoğaltma topolojisi makale için _table eklenmiş bir GUID değeri.Kullanıcı tarafından oluşturulan bir saklı yordam belirterek aboneleri güncelleştirmek için izin verilmez.

    xcall sp_MSupd_tablo

    - veya -

    xcall custom_stored_procedure_name

    Aramaları bir saklı yordam xcall stil parametreleri alma.Bu çoğaltma yöntem kullanmak için schema_option otomatik olarak oluşturulmasını belirtmek için saklı yordam, veya belirtilen saklı yordam hedef veritabanındaki her abone makale.Kullanıcı tarafından oluşturulan bir saklı yordam belirterek aboneleri güncelleştirmek için izin verilmez.

    sql veya null

    Bir update deyim çoğaltır.Güncelleştirme deyim tüm sütun değerleri ve birincil anahtar sütunu değerleri üzerinde sağlanır.Bu komut, Güncelleştirmeler'i çoğaltılır:

    UPDATE <table name> SET c1 = c1value, SET c2 = c2value, SET cn = cnvalue WHERE pkc1 = pkc1value AND pkc2 = pkc2value AND pkcn = pkcnvalue

    Not

    Çağrı, mcall, scall ve xcall sözdizimi için abone yayılma veri miktarı değişir.Çağrı sözdizimi, tüm eklenen ve silinen sütun için tüm değerleri geçirir.scall sözdizimi yalnızca etkilenen sütun değerlerini iletir.xcall sözdizimi değerlerini tüm geçirmeden sütuns, değişip, önceki değeri dahil sütun.Daha fazla bilgi için bkz: Değişiklikleri için işlemsel makaleleri nasıl yayılma belirtme.

  • [ @creation_script =] 'creation_script'
    Is the path and name of an optional article schema script used to create the article in the subscription database.creation_script is nvarchar(255), with a default of NULL.

  • [ @description =] 'description'
    Is a descriptive entry for the article.description is nvarchar(255), with a default of NULL.

  • [ @pre_creation_cmd =] 'pre_creation_cmd'
    Specifies what the system should do if it detects an existing object of the same name at the subscriber when applying the snapshot for this article.pre_creation_cmd is nvarchar(10), and can be one of the following values.

    Değer

    Açıklama

    Yok

    Bir komut kullanın.

    Sil

    Hedef verileri siler tablo anlık görüntü görüntüsünü uygulamadan önce.Zaman makale ise yatay olarak filtre, yalnızca filtre yan tümce tümce tümce tarafından belirtilen sütunlardaki veriler silinir.Yatay bir filtre tanımladığınızda Oracle yayımcılar için desteklenmiyor.

    bırak (varsayılan)

    Hedef Tablo düşünceye.

    Kes

    Hedef Tablo keser.odbc veya ole db aboneleri için geçerli değil.

  • [ @filter_clause=] 'filter_clause'
    Bir kısıtlamadır yatay bir filtre tanımlar (nerede) yan tümce tümce tümce.When entering the restriction clause, omit the keyword WHERE.filter_clause is ntext, with a default of NULL.Daha fazla bilgi için bkz: Veri süzme yayımlandı.

  • [ @schema_option =] schema_option
    Is a bitmask of the schema generation option for the given article.schema_option is binary(8), and can be the | (Bitwise OR) product of one or more of these values:

    Not

    Bu değer null ise sistem otomatik-bir geçerli şema seçeneği diğer makale özelliklerini bağlı makale oluşturur.The Default Schema Options table given in the Remarks shows the value that will be chosen based upon the combination of the article type and the replication type.

    Değer

    Açıklama

    0x00

    komut dosyası kullanan kullanan kullanan dosyası Snapshot Aracısı tarafından devre dışı bırakır ve kullanan creation_script.

    0x01

    Nesne oluşturma komut dosyası (create table, create procedure vb.) oluşturur.Bu saklı yordam makaleleri için varsayılan değerdir.

    0x02

    Tanımlanan makale değişiklikleri yaymak saklı yordamlar oluşturur.

    0x04

    Kimlik sütunları kullanarak kimlik özellik vermeyecekleri.

    0x08

    Çoğaltma timestamp sütunlar.Aksi takdirde küme, timestamp sütun olarak çoğaltılmasını binary.

    0x10

    Karşılık gelen kümelenmiş dizin oluşturur.Bu seçenek ayarlanırsa, birincil anahtar ve benzersiz kısıtlamaları ile ilgili dizinler oluşturulur zaten olmaları durumunda bile yayınlanan üzerinde tanımlı tablo.

    0x20 değerli

    Temel abone adresindeki veri türleri dönüştürür kullanıcı tanımlı veri türleri (udt).udt sütun parçası ise bir udt sütunundaki onay veya varsayılan kısıtlama olduğunda bu seçenek kullanılamaz birincil anahtar, veya hesaplanan sütun udt sütun başvuruyorsa.Oracle yayımcılar için desteklenen değil.

    0x40

    Karşılık gelen kümelenmemiş dizinler oluşturur.Bu seçenek ayarlanırsa, birincil anahtar ve benzersiz kısıtlamaları ile ilgili dizinler oluşturulur zaten olmaları durumunda bile yayınlanan üzerinde tanımlı tablo.

    0x80

    Birincil anahtar kısıtlamaları çoğaltır.Kısıtlama olarak ilişkili tüm dizinler de çoğaltılır, bile seçenekleri 0x10 ve 0x40 etkin değil.

    0x100

    Kullanıcı Tetikleyiciler üzerinde bir tablo makale tanımlanmışsa çoğaltır.Oracle yayımcılar için desteklenen değil.

    0x200

    Yabancı anahtar kısıtlamalarını çoğaltır.Yayımlanmış bir tabloda tüm yabancı anahtar kısıtlamaları başvurulan tablo yayın bir parçası değilse, çoğaltılmaz.Oracle yayımcılar için desteklenen değil.

    0x400

    Denetleme kısıtlamaları çoğaltır.Oracle yayımcılar için desteklenen değil.

    0x800

    Varsayılanları çoğaltır.Oracle yayımcılar için desteklenen değil.

    0x1000

    Sütun - çoğaltırdüzey harmanlama.

    NotNot
    Bu seçenek olması gereken küme büyük küçük durum duyarlı karşılaştırmaları etkinleştirmek Oracle yayımcılar için.

    0x2000

    Genişletilmiş özellikler yayımlanmış makale ile ilişkili çoğaltır kaynak nesne.Oracle yayımcılar için desteklenen değil.

    0x4000

    BENZERSİZ kısıtlamaları çoğaltır.Kısıtlama olarak ilişkili tüm dizinler de çoğaltılır, bile seçenekleri 0x10 ve 0x40 etkin değil.

    0x8000

    Bu seçenek için geçerli değil SQL Server 2005 Publishers.

    ile

    Böylece eşitleme sırasında kısıtlamalar zorlandığı çoğaltma için değil denetim kısıtlamalarını çoğaltır.

    0x20000

    Böylece eşitleme sırasında kısıtlamalar zorlandığı çoğaltma için değil yabancı anahtar kısıtlamalarını çoğaltır.

    0x40000

    Bölümlenmiş tablo veya dizin ile ilişkili filegroups çoğaltır.

    0x80000

    Çoğaltır bölümleme düzeni bölümlenmiş tablo için.

    0x100000

    Çoğaltır bölümleme düzeni bölümlenmiş dizin için.

    0x200000

    Çoğaltır tablo istatistikleri.

    0x400000

    Varsayılan bağlar

    0x800000

    Kural bağlar

    0x1000000

    Tam metin dizini

    0x2000000

    xml şema koleksiyonları bağlı xml sütunlar yinelenmez.

    0x4000000

    Dizinler üzerinde çoğaltır xml sütunlar.

    0x8000000

    Zaten mevcut tüm şemalar üzerinde abone oluşturun.

    0x10000000

    Dönüştürür xml sütun ntext abone.

    0x20000000

    Dönüştürür büyük nesne veri türleri (nvarchar(max), varchar(max), ve varbinary(max)) olarak SQL Server 2005 üzerinde desteklenen veri türleri için SQL Server 2000.Bu türleri ile nasıl eşleştirildikleri hakkında daha fazla bilgi için bkz: "eşleme yeni veri türleri için önceki sürümler" Bölüm'de sql Server birden çok sürümünü kullanarak bir çoğaltma topolojisi içinde.

    0x40000000

    İzinleri çoğaltır.

    0x80000000

    yayın bir parçası olan nesneleri bağımlılıkları bırakma girişimi.

    0x100000000

    FILESTREAM öznitelik üzerinde belirtilmişse çoğaltmak için bu seçeneği kullanın varbinary(max) sütunlar.Tablolara çoğaltıyorsanız bu seçenek belirtmek SQL Server 2005 aboneleri.FILESTREAM sütunları olan tablo çoğaltma SQL Server 2000 aboneleri desteklenmiyor, olsun nasıl bu şema seçenek küme.

    İlgili seçeneği görmek 0x800000000.

    0x200000000

    Tarih ve saat veri türleri dönüştürür (date, time, datetimeoffset, ve datetime2) olarak SQL Server 2008 önceki sürümlerinde desteklenen veri türleri için SQL Server.Bu türleri ile nasıl eşleştirildikleri hakkında daha fazla bilgi için bkz: "eşleme yeni veri türleri için önceki sürümler" Bölüm'de sql Server birden çok sürümünü kullanarak bir çoğaltma topolojisi içinde.

    0x400000000

    Veri ve dizinler için sıkıştırma seçeneği çoğaltır.Daha fazla bilgi için bkz: Sıkıştırılmış tablolar ve dizinler oluşturma.

    0x800000000

    Abone adresindeki kendi dosya grubu üzerinde FILESTREAM verileri saklamak için bu seçeneği ayarlayın.Bu seçenek ise küme, FILESTREAM veri varsayılan dosya grubu üzerinde saklanır.Çoğaltma, dosya gruplarını oluşturun; Bu nedenle, sizin küme anlık görüntü abone adresindeki uygulamadan önce bu seçeneği, dosya grubu oluşturmanız gerekir.anlık görüntü görüntüsünü uygulamadan önce nesneleri oluşturma hakkında daha fazla bilgi için bkz: Önce ve sonra bir Snapshot uygulanan komut dosyalarını çalıştırma.

    İlgili seçeneği görmek 0x100000000.

    0x1000000000

    İçin 8000 bayttan daha büyük olan ortak dil çalışma zamanı (clr) kullanıcı tanımlı türler (UDTs) dönüştürür varbinary(max) türü udt sütunları çoğaltılan çalıştıran aboneleri için böylece SQL Server 2005.

    0x2000000000

    Dönüştürür hierarchyid veri türü varbinary(max) böylece türündeki sütunlar hierarchyid çoğaltılan çalıştıran aboneleri için SQL Server 2005.Nasıl kullanılacağı hakkında daha fazla bilgi için hierarchyid sütunları Çoğaltılan tablolarda görmek hierarchyid (Transact-SQL).

    0x4000000000

    Herhangi bir filtre uygulanmış dizinler üzerinde çoğaltır tablo.Filtre uygulanmış dizinler hakkında daha fazla bilgi için bkz: Filtre uygulanmış dizin tasarım yönergeleri.

    0x8000000000

    Dönüştürür geography ve geometry veri türleri varbinary(max) sütunların bu türleri çoğaltılan çalıştıran aboneleri için böylece SQL Server 2005.

    0x10000000000

    Türü sütun dizinlerde çoğaltır geography ve geometry.

    0x20000000000

    sparse öznitelik sütunları için çoğaltır.Bu öznitelik hakkında daha fazla bilgi için bkz: Seyrek sütunlar kullanma.

    NULL

    Çoğaltma otomatik olarak ayarlar schema_option için bir varsayılan değer değeri bağlıdır diğer makale özellikleri."Varsayılan şema Seçenekleri" Açıklamalar bölümünde tablo makale türü ve çoğaltma türü temel alarak varsayılan şema seçeneklerini gösterir.

    Varsayılan olmayan-SQL Server yayınları ise 0x050D3.

    Tüm schema_option değerler geçerli her tür çoğaltma ve makale türü.The Valid Schema Options table in the Remarks section shows the valid schema options that can be chosen based upon the combination of the article type and the replication type.

  • [ @destination_owner =] 'destination_owner'
    Is the name of the owner of the destination object.destination_owner is sysname, with a default of NULL.Zaman destination_owner , otomatik olarak aşağıdaki kurallara dayalı sahibi belirtilen belirtilmemiş:

    Koşul

    Hedef nesne sahibi

    Yayında sadece destekleyen ilk anlık görüntü, üretmek için yerel mod toplu kopyalama SQL Server aboneleri.

    Varsayılan değerine source_owner.

    Olmayan bir yayımlanan-SQL Server Yayımcı.

    Hedef veritabanının sahibi varsayılan.

    Yayında olmayan destekleyen ilk anlık görüntü, üretmek için karakter modu toplu kopyalama-SQL Server aboneleri.

    Atanmamış.

    Olmayan desteklemek için-SQL Server aboneleri, destination_owner olmalıdır null.

  • [ @status=] status
    Specifies if the article is active and additional options for how changes are propagated.status is tinyint, and can be the | (Bitwise OR) product of one or more of these values.

    Değer

    Açıklama

    1

    Makale etkindir.

    8

    INSERT deyimleri sütun adını içerir.

    16 (varsayılan)

    İfadeleri kullanır parametreli.

    24

    INSERT deyimleri sütun adını içerir ve parametreli deyimleri kullanır.

    64

    Yalnızca bilgi amaçlı olarak belirtilmiştir. Desteklenmez. Gelecekteki uyumluluk garanti edilmez.

    Parametreli deyimleri kullanarak etkin bir makale 17 değeri bu örneğin, olur sütun.Değeri, 0 makale etkin değil ve hiçbir ek özelliklerin tanımlandığı anlamına gelir.

  • [ @source_owner =] 'source_owner'
    Is the owner of the source object.source_owner is sysname, with a default of NULL.source_owner must be specified for Oracle Publishers.

  • [ @sync_object_owner =] 'sync_object_owner'
    Is the owner of the view that defines the published article.sync_object_owner is sysname, with a default of NULL.

  • [ @filter_owner =] 'filter_owner'
    Is the owner of the filter.filter_owner is sysname, with a default of NULL.

  • [ @source_object =] 'source_object'
    Is the database object to be published.source_object is sysname, with a default of NULL.If source_table is NULL, source_object cannot be NULL.source_object should be used instead of source_table.Anlık görüntü veya işlem çoğaltma kullanarak yayımlanmış nesne türleri hakkında daha fazla bilgi için bkz: Yayımlama veri ve veritabanı nesneleri.

  • [ @artid = ] article_ID OUTPUT
    Is the article ID of the new article.article_ID is int with a default of NULL, and it is an OUTPUT parameter.

  • [ @auto_identity_range = ] 'auto_identity_range'
    Enables and disables automatic identity range handling on a publication at the time it is created.auto_identity_range is nvarchar(5), and can be one of the following values:

    Değer

    Açıklama

    true

    Otomatik kimlik aralık işlenmesini sağlar

    false

    Otomatik kimlik aralık işleme devre dışı bırakır

    Null(default)

    Kimlik aralık işleme küme identityrangemanagementoption.

    Not

    auto_identity_range onaylanmaz ve yalnızca geriye dönük uyumluluk için sağlanır.Kullanmanız gereken identityrangemanagementoption belirtme kimlik aralık yönetimi seçenekleri.Daha fazla bilgi için bkz: Kimlik sütunları çoğaltılıyor.

  • [ @pub_identity_range = ] pub_identity_range
    Controls the range size at the Publisher if the article has identityrangemanagementoption set to auto or auto_identity_range set to true.pub_identity_range is bigint, with a default of NULL.Oracle yayımcılar için desteklenen değil.

  • [ @identity_range = ] identity_range
    Controls the range size at the Subscriber if the article has identityrangemanagementoption set to auto or auto_identity_range set to true.identity_range is bigint, with a default of NULL.Ne zaman kullanılan auto_identity_range olan küme için doğru.Oracle yayımcılar için desteklenen değil.

  • [ @threshold = ] threshold
    Ne zaman Dağıtım Aracısı yeni bir kimlik aralık atar denetleyen yüzde değeridir.When the percentage of values specified in threshold is used, the Distribution Agent creates a new identity range.threshold is bigint, with a default of NULL.Ne zaman kullanılan identityrangemanagementoption olarak küme Otomatik ya da auto_identity_range olarak küme doğru.Oracle yayımcılar için desteklenen değil.

  • [ @force_invalidate_snapshot = ] force_invalidate_snapshot
    Acknowledges that the action taken by this stored procedure may invalidate an existing snapshot.force_invalidate_snapshot is a bit, with a default of 0.

    0 bir makale ekleme anlık görüntü geçersiz olarak neden olmaz olduğunu belirtir.Saklı yordam, yeni bir anlık görüntü değişikliği gerektirdiğini algılarsa, bir hata oluşur ve değişiklik yapılmaz.

    1 bir makale anlık görüntü geçersiz olarak neden olabilir ve abonelikleri varsa, duyar yeni bir anlık görüntü ekleme varolan anlık görüntü geçersiz olarak işaretlenmesi ve oluşturulacak yeni bir anlık görüntü için izni verir belirtir.

  • [ @use_default_datatypes = ] use_default_datatypes
    Is whether the default column data type mappings are used when publishing an article from an Oracle Publisher.use_default_datatypes is bit, with a default of 1.

    1 = varsayılan makale sütun eşleştirmeleri kullanılır.Varsayılan veri türü eşlemeleri yürüterek görüntülenebilen sp_getdefaultdatatypemapping.

    0 = özel makale sütun eşlemeleri tanımlanır ve bu nedenle sp_articleview çağrılmaz sp_addarticle.

    Zaman use_default_datatypes olarak küme 0, gereken yürütmek sp_changearticlecolumndatatype varsayılan değiştirilmesini her sütun eşleme için bir kez.Tüm özel sütun eşlemeleri tanımladıktan sonra gerekir yürütmek sp_articleview.

    Not

    Bu parametre yalnızca Oracle yayımcılar için kullanılmalıdır.Ayar use_default_datatypes için 0 için bir SQL Server Yayımcı oluşturduğu bir hata.

  • [ @identityrangemanagementoption = ] identityrangemanagementoption
    Specifies how identity range management is handled for the article.identityrangemanagementoption is nvarchar(10), and can be one of the following values.

    Değer

    Açıklama

    none

    Hiçbir açık kimlik aralık yönetimi çoğaltma yapar.Bu seçenek yalnızca geriye doğru sql Server'ın önceki sürümleriyle uyumluluk önerilir.Peer çoğaltma için izin verilmez.

    manual

    İşaretleri kimlik sütunu not for REPLICATION kullanarak el ile kimlik aralık işleme etkinleştirin.

    auto

    Otomatik kimlik aralığı yönetimi belirtir.

    Null(default)

    Varsayılan olarak none zaman değeri auto_identity_range değil true.Varsayılan olarak manual bir eşler arası topoloji varsayılan (auto_identity_range yok sayılır).

    Geriye doğru uyumluluk için değeri identityrangemanagementoption değeri null olan auto_identity_range denetlenir.Ancak, ne zaman değeri identityrangemanagementoption not null, sonra değeri olan auto_identity_range göz ardı edilir.

    Daha fazla bilgi için bkz: Kimlik sütunları çoğaltılıyor.

  • [ @publisher = ] 'publisher'
    Specifies a non-SQL Server Publisher.publisher is sysname, with a default of NULL.

    Not

    publisherbir makale eklerken kullanılmamalıdır bir SQL Server Yayımcı.

  • [ @fire_triggers_on_snapshot = ] 'fire_triggers_on_snapshot'
    Is if replicated user triggers are executed when the initial snapshot is applied.fire_triggers_on_snapshot is nvarchar(5), with a default of FALSE.true means that user triggers on a replicated table are executed when the snapshot is applied.Sırada çoğaltılması tetikleyici bit maskesi değeri schema_option değerini içermelidir 0x100.

Dönüş Kodu Değerleri

0 (başarılı) veya 1 (başarısız)

Açıklamalar

sp_addarticle anlık görüntü çoğaltması çoğaltması çoğaltma veya işlem çoğaltma kullanılır.

Varsayılan olarak, kaynak programda tüm sütunları çoğaltma yayımlamaz tablo ne zaman sütun veri türü desteklenmiyor çoğaltma tarafından.Bir sütun yayımlamak istiyorsanız, yapmanız gerekenler yürütmek sp_articlecolumn sütunu eklemek için.Daha fazla bilgi için bkz: Çoğaltma tüm türleri için dikkat edilmesi gereken noktalar.

Bir makale eklerken bir yayın , eşler arası işlem çoğaltma destekleyen, aşağıdaki kısıtlamalar geçerlidir:

  • Parametreli deyimleri tüm logbased makaleler için belirtilmelidir.Eklemelisiniz 16 de status değer.

  • Adı ve sahibi hedef tablonun kaynak tablo eşleşmesi gerekir.

  • makale Yatay veya dikey olarak süzülmüş.

  • Otomatik kimlik aralık yönetimi desteklenmiyor.İçin el ile bir değer belirtmeniz gerekir identityrangemanagementoption.

  • Yoksa bir timestamp sütun bulunmaktadır tablo, içinde 0x08 eklemeniz gerekir schema_option sütun olarak çoğaltmak için timestamp.

  • Değeri, sql için tarif edilemez ins_cmd, upd_cmd, ve del_cmd.

Daha fazla bilgi için bkz: Eşler arası işlem çoğaltma.

Nesneleri yayımladığınızda, bunların tanımları abonelere kopyalanır.Bağlı bir veya daha çok diğer nesnelerin bir veritabanı nesnesini yayın yapıyorsanız, tüm başvurulan nesneler yayımlamanız gerekir.Örneğin, bir tablo üzerinde bağlıdır bir görünüm yayımlarsanız, tablo da yayımlamanız gerekir.

If vertical_partition is set to true, sp_addarticle defers the creation of the view until sp_articleview is called (after the last sp_articlecolumn is added).

yayın abonelikleri ve yayımlanmış tablo güncelleştirme veriyorsa sahip olmadığı bir uniqueidentifier sütun, sp_addarticle ekler bir uniqueidentifier tablo sütunu otomatik olarak.

Varsayılan şema seçenekleri

Bu tablo varsayılan değeri açıklanır küme çoğaltma tarafından schema_options Burada bu değer bağlıdır (üst boyunca gösterilen) çoğaltma türü ve (ilk sütun boyunca gösterilen) makale türü kullanıcı tarafından belirtilen.

Makale türü

Çoğaltma türü

 

 

İşlem

Anlık görüntü

toplu şema

0x01

0x01

işlev şema

0x01

0x01

dizinli görünüm şema

0x01

0x01

dizinli görünüm logbased

0x30F3

0x3071

dizinli görünüm logbase manualboth

0x30F3

0x3071

dizinli görünüm logbased manualfilter

0x30F3

0x3071

dizinli görünüm logbased manualview

0x30F3

0x3071

logbased

0x30F3

0x3071

logbased manualfilter

0x30F3

0x3071

logbased manualview

0x30F3

0x3071

yordam exec

0x01

0x01

proc şema

0x01

0x01

seri hale getirilebilir yordam exec

0x01

0x01

Yalnızca Görünüm şema

0x01

0x01

Not

Bir yayın, güncelleştirme sıraya için etkinse, bir schema_option değeri 0x80 gösterilen varsayılan değere eklenir tablo.Varsayılan değer schema_option için bir olmayan-SQL Server yayın 0x050D3.

Geçerli şema seçenekleri

Bu tablo izin verilen değerleri açıklar schema_option (üst boyunca gösterilen) çoğaltma türü ve (ilk sütun boyunca gösterilen) makale türü temel.

Makale türü

Çoğaltma türü

 

 

İşlem

Anlık görüntü

logbased

Tüm seçenekler

Tüm seçenekler ancak 0x02

logbased manualfilter

Tüm seçenekler

Tüm seçenekler ancak 0x02

logbased manualview

Tüm seçenekler

Tüm seçenekler ancak 0x02

dizinli görünüm logbased

Tüm seçenekler

Tüm seçenekler ancak 0x02

dizinli görünüm logbased manualfilter

Tüm seçenekler

Tüm seçenekler ancak 0x02

dizinli görünüm logbased manualview

Tüm seçenekler

Tüm seçenekler ancak 0x02

dizinli görünüm logbase manualboth

Tüm seçenekler

Tüm seçenekler ancak 0x02

yordam exec

0x01, 0x20 değerli, 0x2000, 0x400000, 0x800000, 0x2000000, 0x8000000, 0x10000000, 0x20000000, 0x40000000, ve 0x80000000

0x01, 0x20 değerli, 0x2000, 0x400000, 0x800000, 0x2000000, 0x8000000, 0x10000000, 0x20000000, 0x40000000, ve 0x80000000

seri hale getirilebilir yordam exec

0x01, 0x20 değerli, 0x2000, 0x400000, 0x800000, 0x2000000, 0x8000000, 0x10000000, 0x20000000, 0x40000000, ve 0x80000000

0x01, 0x20 değerli, 0x2000, 0x400000, 0x800000, 0x2000000, 0x8000000, 0x10000000, 0x20000000, 0x40000000, ve 0x80000000

proc şema

0x01, 0x20 değerli, 0x2000, 0x400000, 0x800000, 0x2000000, 0x8000000, 0x10000000, 0x20000000, 0x40000000, ve 0x80000000

0x01, 0x20 değerli, 0x2000, 0x400000, 0x800000, 0x2000000, 0x8000000, 0x10000000, 0x20000000, 0x40000000, ve 0x80000000

Yalnızca Görünüm şema

0x01, 0x010, 0x020, 0x040, 0x0100, 0x2000, 0x40000, 0x100000, 0x200000, 0x400000, 0x800000, 0x2000000, 0x8000000, 0x40000000, and 0x80000000

0x01, 0x010, 0x020, 0x040, 0x0100, 0x2000, 0x40000, 0x100000, 0x200000, 0x400000, 0x800000, 0x2000000, 0x8000000, 0x40000000, and 0x80000000

işlev şema

0x01, 0x20 değerli, 0x2000, 0x400000, 0x800000, 0x2000000, 0x8000000, 0x10000000, 0x20000000, 0x40000000, ve 0x80000000

0x01, 0x20 değerli, 0x2000, 0x400000, 0x800000, 0x2000000, 0x8000000, 0x10000000, 0x20000000, 0x40000000, ve 0x80000000

dizinli görünüm şema

0x01, 0x010, 0x020, 0x040, 0x0100, 0x2000, 0x40000, 0x100000, 0x200000, 0x400000, 0x800000, 0x2000000, 0x8000000, 0x40000000, and 0x80000000

0x01, 0x010, 0x020, 0x040, 0x0100, 0x2000, 0x40000, 0x100000, 0x200000, 0x400000, 0x800000, 0x2000000, 0x8000000, 0x40000000, and 0x80000000

Not

Kuyruğa alınmış güncelleştirme yayınlar için schema_option değerlerini 0x8000 ve 0x80 etkinleştirilmiş olması gerekir.Desteklenen schema_option için değer olmayan-SQL Server yayınları şunlardır: 0x01, 0x02, 0x10, 0x40, 0x80, 0x1000, 0x4000 and 0X8000.

Örnek

DECLARE @publication    AS sysname;
DECLARE @table AS sysname;
DECLARE @filterclause AS nvarchar(500);
DECLARE @filtername AS nvarchar(386);
DECLARE @schemaowner AS sysname;
SET @publication = N'AdvWorksProductTran'; 
SET @table = N'Product';
SET @filterclause = N'[DiscontinuedDate] IS NULL'; 
SET @filtername = N'filter_out_discontinued';
SET @schemaowner = N'Production';

-- Add a horizontally and vertically filtered article for the Product table.
-- Manually set @schema_option to ensure that the Production schema 
-- is generated at the Subscriber (0x8000000).
EXEC sp_addarticle 
    @publication = @publication, 
    @article = @table, 
    @source_object = @table,
    @source_owner = @schemaowner, 
    @schema_option = 0x80030F3,
    @vertical_partition = N'true', 
    @type = N'logbased',
    @filter_clause = @filterclause;

-- (Optional) Manually call the stored procedure to create the 
-- horizontal filtering stored procedure. Since the type is 
-- 'logbased', this stored procedures is executed automatically.
EXEC sp_articlefilter 
    @publication = @publication, 
    @article = @table, 
    @filter_clause = @filterclause, 
    @filter_name = @filtername;

-- Add all columns to the article.
EXEC sp_articlecolumn 
    @publication = @publication, 
    @article = @table;

-- Remove the DaysToManufacture column from the article
EXEC sp_articlecolumn 
    @publication = @publication, 
    @article = @table, 
    @column = N'DaysToManufacture', 
    @operation = N'drop';

-- (Optional) Manually call the stored procedure to create the 
-- vertical filtering view. Since the type is 'logbased', 
-- this stored procedures is executed automatically.
EXEC sp_articleview 
    @publication = @publication, 
    @article = @table,
    @filter_clause = @filterclause;
GO

İzinler

Yalnızca üyeleri sysadmin sabit sunucu rolü veya db_owner sabit veritabanı rolü olabilir yürütmek sp_addarticle.