如何指定项目类型(复制 Transact-SQL 编程)

复制的默认项目类型为表项目,但可以将其他数据库对象发布为项目,这些项目包括视图、存储过程、用户定义函数以及存储过程执行。 定义项目时,您可以使用复制存储过程以编程方式指定项目类型。 您要使用的具体过程取决于复制的类型和项目的类型。

注意注意

定义表、视图和存储过程项目时采用仅限架构的设计表示只复制对象定义。

在事务发布或快照发布中发布表项目

  1. 在发布服务器上,对发布数据库执行 sp_addarticle。 将 @type 指定为以下值之一以定义项目类型:

    这样便为发布定义了一个新项目。 有关详细信息,请参阅如何定义项目(复制 Transact-SQL 编程)

  2. 对于 logbased manualbothlogbased manualfilter 项目,请执行 sp_articlefilter 生成用于水平筛选项目的筛选存储过程。 有关详细信息,请参阅如何定义和修改静态行筛选器(复制 Transact-SQL 编程)

  3. 对于 logbased manualbothlogbased manualviewlogbased manualfilter 项目,请执行 sp_articleview 生成用于定义垂直筛选项目的视图。 有关详细信息,请参阅如何定义和修改列筛选器(复制 Transact-SQL 编程)

在事务发布或快照发布中发布视图项目或索引视图项目

  1. 在发布服务器上,对发布数据库执行 sp_addarticle。 将 @type 指定为以下值之一以定义项目类型:

    这样便为发布定义了一个新项目。 有关详细信息,请参阅如何定义项目(复制 Transact-SQL 编程)

  2. 对于 logbased manualbothlogbased manualfilter 项目,请执行 sp_articlefilter 生成用于水平筛选项目的筛选存储过程。 有关详细信息,请参阅如何定义和修改静态行筛选器(复制 Transact-SQL 编程)

  3. 对于 logbased manualbothlogbased manualviewlogbased manualfilter 项目,请执行 sp_articleview 生成用于定义垂直筛选项目的视图。 有关详细信息,请参阅如何定义和修改列筛选器(复制 Transact-SQL 编程)

在事务发布或快照发布中发布存储过程、存储过程执行或用户定义函数项目

在合并发布中发布表或视图项目

  • 在发布服务器上,对发布数据库执行 sp_addmergearticle。 将 @type 指定为以下值之一以定义项目类型:

    • table - 表项目。

    • indexed view schema only - 仅限架构的索引视图项目。

    • view schema only - 仅限架构的视图项目。

    这样便为发布定义了一个新项目。 有关详细信息,请参阅如何定义项目(复制 Transact-SQL 编程)

在合并发布中发布存储过程或用户定义函数项目

  • 在发布服务器上,对发布数据库执行 sp_addmergearticle。 将 @type 指定为以下值之一以定义项目类型:

    • func schema only - 仅限架构的用户定义函数项目。

    • proc schema only - 仅限架构的存储过程项目。

    这样便为发布定义了一个新项目。 有关详细信息,请参阅如何定义项目(复制 Transact-SQL 编程)