sysmergepartitioninfoview (Transact-SQL)
适用于:SQL Server
sysmergepartitioninfoview 视图公开表文章的分区信息。 此视图存储在发布服务器的发布数据库以及订阅服务器的订阅数据库中。
列名称 | 数据类型 | 说明 |
---|---|---|
name | sysname | 项目的名称。 |
type | tinyint | 指示项目类型,可以为下列类型之一: 0x0a = 表。 0x20 = 仅过程架构。 0x40 = 仅查看架构或仅索引视图架构。 0x80 = 仅函数架构。 |
objid | int | 已发布对象的标识符。 |
sync_objid | int | 表示同步数据集的视图的对象 ID。 |
view_type | tinyint | 视图类型: 0 = 非视图;使用所有基对象。 1 = 永久视图。 2 = 临时视图。 |
artid | uniqueidentifier | 给定项目的唯一标识号。 |
说明 | nvarchar(255) | 项目的简要说明。 |
pre_creation_command | tinyint | 在订阅数据库中创建项目时将执行的默认操作: 0 = 无 - 如果订阅服务器上已存在表,则不执行任何操作。 1 = Drop - 在重新创建表之前删除该表。 2 = 删除 - 根据子集筛选器中的 WHERE 子句发出删除。 3 = 截断 - 与 2 相同,但删除页面而不是行。 不过,不要使用 WHERE 子句。 |
pubid | uniqueidentifier | 当前项目所属发布的 ID。 |
昵称 | int | 项目标识的别名映射。 |
column_tracking | int | 指示是否为项目执行列跟踪。 |
status | tinyint | 指示项目的状态,可以为下列状态之一: 1 = 未同步 - 发布表的初始处理脚本将在下次运行快照代理时运行。 2 = 活动 - 运行用于发布表的初始处理脚本。 |
conflict_table | sysname | 包含当前项目冲突记录的本地表的名称。 该表仅用于提供信息,其内容可以由自定义冲突解决例程修改或删除,或直接由系统管理员修改或删除。 |
creation_script | nvarchar(255) | 此项目的创建脚本。 |
conflict_script | nvarchar(255) | 此项目的冲突脚本。 |
article_resolver | nvarchar(255) | 该项目的冲突解决程序。 |
ins_conflict_proc | sysname | 用于向冲突表写入冲突信息的过程。 |
insert_proc | sysname | 用于在同步过程中插入行的过程。 |
update_proc | sysname | 用于在同步过程中更新行的过程。 |
select_proc | sysname | 自动生成的存储过程的名称,合并代理使用该存储过程完成锁定并查找项目的行和列。 |
metadata_select_proc | sysname | 自动生成的存储过程的名称,该存储过程用于访问合并复制系统表中的元数据。 |
delete_proc | sysname | 用于在同步过程中删除行的过程。 |
schema_option | binary(8) | 给定文章的架构生成选项的位图。 有关支持的schema_option值的信息,请参阅sp_addmergearticle(Transact-SQL)。 |
destination_object | sysname | 在订阅服务器上创建的表的名称。 |
destination_owner | sysname | 目标对象的所有者的名称。 |
resolver_clsid | nvarchar(50) | 自定义冲突解决程序的 ID。 对于业务逻辑处理程序,该值为 NULL。 |
subset_filterclause | nvarchar(1000) | 此项目的筛选子句。 |
missing_col_count | int | 项目中缺少的已发布列数。 |
missing_cols | varbinary(128) | 用于说明项目中的缺少列的位图。 |
excluded_cols | varbinary(128) | 已从项目中排除的列的位图。 |
excluded_col_count | int | 从项目中排除的列数。 |
columns | varbinary(128) | 标识为仅供参考。 不支持。 不保证以后的兼容性。 |
deleted_cols | varbinary(128) | 用于说明从项目中删除的列的位图。 |
resolver_info | nvarchar(255) | 存储自定义冲突解决程序所需的其他信息。 |
view_sel_proc | nvarchar(290) | 存储过程的名称,合并代理使用该存储过程初始填充动态筛选发布中的项目,并枚举在任何筛选发布中的已更改行。 |
gen_cur | bigint | 生成项目基表的本地更改数。 |
vertical_partition | int | 指定是否对表项目启用列筛选。 0 表示没有垂直筛选并发布所有列。 |
identity_support | int | 指定是否启用自动标识范围处理。 1 表示已启用标识范围处理, 0 表示没有标识范围支持。 |
before_image_objid | int | 跟踪表对象 ID。 当已对发布启用分区更改优化时,跟踪表将包含某些键列值。 |
before_view_objid | int | 视图表的对象 ID。 视图所在的表用于在删除或更新行之前跟踪行是否属于特定的订阅服务器。 仅当对发布启用了分区更改优化时才适用。 |
verify_resolver_signature | int | 指定在合并复制中使用冲突解决程序之前是否验证数字签名: 0 = 未验证签名。 1 = 已验证签名,以查看签名是否来自受信任的源。 |
allow_interactive_resolver | bit | 指定是否对项目启用交互式冲突解决程序。 1 表示可以在文章中使用交互式冲突解决程序。 |
fast_multicol_updateproc | bit | 指定是否已启用合并代理来使用一条 UPDATE 语句在同一行的多个列中应用更改。 0 = 为每个列发出单独的 UPDATE 更改。 1 = 在 UPDATE 语句上发出,这会导致更新发生在一个语句中的多个列。 |
check_permissions | int | 当合并代理向发布服务器应用更改时将验证的表级权限的位图。 check_permissions可以具有以下值之一: 0x00 = 未检查权限。 0x10 = 在订阅服务器上进行 INSERT 之前检查发布服务器的权限。 0x20 = 在订阅服务器上进行 UPDATEE 之前检查发布服务器的权限。 0x40 = 在订阅服务器上进行 DELET 之前检查发布服务器的权限。 |
maxversion_at_cleanup | int | 合并代理下次运行时清除的最大生成。 |
processing_order | int | 指示合并发布中项目处理顺序;如果值为 0 ,则表示项目未排序,并且按从低到高的顺序处理项目。 如果两个项目具有相同值,将对其进行并发处理。 有关详细信息,请参阅指定合并复制属性。 |
upload_options | tinyint | 定义是否可以在订阅服务器上进行更改或从订阅服务器上载更改,可以为下列值之一: 0 = 订阅服务器上进行的更新没有限制;所有更改都上传到发布服务器。 1 = 订阅服务器上允许更改,但不会上传到发布服务器。 2 = 订阅服务器上不允许更改。 |
published_in_tran_pub | bit | 指示合并发布中的项目也将在事务发布中发布。 0 = 项目未在事务性文章中发布。 1 = 项目也发布在事务性文章中。 |
轻 | bit | 标识为仅供参考。 不支持。 不保证以后的兼容性。 |
procname_postfix | nchar(32) | 标识为仅供参考。 不支持。 不保证以后的兼容性。 |
well_partitioned_lightweight | bit | 标识为仅供参考。 不支持。 不保证以后的兼容性。 |
before_upd_view_objid | int | 更新前表视图的 ID。 |
delete_tracking | bit | 指示是否复制删除。 0 = 不会复制删除。 1 = 复制删除,这是合并复制的默认行为。 当delete_tracking值为 0 时,必须在发布服务器上手动删除订阅服务器上的行,并且必须在订阅服务器上手动删除在发布服务器上删除的行。 注意:值为 0 会导致非收敛。 |
compensate_for_errors | bit | 指示在同步期间遇到错误时是否采取补救措施。 0 = 禁用补偿操作。 1 = 无法在订阅服务器或发布服务器上应用的更改始终会导致补偿操作以撤消这些更改,这是合并复制的默认行为。 注意:值为 0 会导致非收敛。 |
pub_range | bigint | 发布服务器标识范围大小。 |
range | bigint | 将分配到调整中订阅服务器的连续标识值的大小。 |
threshold | int | 标识范围阈值百分比。 |
stream_blob_columns | bit | 指示是否使用针对二进制大型对象列的流式优化。 1 表示尝试优化。 |
preserve_rowguidcol | bit | 指示复制是否使用现有 rowguid 列。 值为 1 表示使用现有的 ROWGUIDCOL 列。 0 表示复制添加了 ROWGUIDCOL 列。 |
partition_view_id | int | 标识定义订阅服务器分区的视图。 |
repl_view_id | int | 标识为仅供参考。 不支持。 不保证以后的兼容性。 |
partition_deleted_view_rule | sysname | 在合并复制触发器内部使用的语句,用于根据其旧列值检索每个已删除或已更新行的分区 ID。 |
partition_inserted_view_rule | Sysname | 在合并复制触发器内部使用的语句,用于根据其新列值检索每个已插入或已更新行的分区 ID。 |
membership_eval_proc_name | sysname | 计算MSmerge_contents(Transact-SQL)中行的当前分区 ID 的过程的名称。 |
column_list | sysname | 在项目中发布的列的逗号分隔列表。 |
column_list_blob | sysname | 在项目中发布的列(包括二进制大型对象列)的逗号分隔列表。 |
expand_proc | sysname | 重新计算新插入父行的所有子行的分区 ID 以及已经历分区更改或已删除的父行的过程的名称。 |
logical_record_parent_nickname | int | 逻辑记录中指定项目的顶级父项目的别名。 |
logical_record_view | int | 一个视图,用于输出与各子项目 rowguid 相对应的顶级父项目 rowguid。 |
logical_record_deleted_view_rule | sysname | 与 logical_record_view类似,不同之处在于它在更新和删除触发器的“已删除”表中显示子行。 |
logical_record_level_conflict_detection | bit | 指示应在逻辑记录级还是行级或列级检测冲突。 0 = 使用行级或列级冲突检测。 1 = 使用逻辑记录冲突检测,其中发布服务器上的某一行发生更改,并且订阅服务器上的同一逻辑记录在单独的行中更改作为冲突进行处理。 当该值为 1 时,只能使用逻辑记录级别的冲突解决。 |
logical_record_level_conflict_resolution | bit | 指示是应在逻辑记录级别还是行级别或列级别解决冲突。 0 = 使用行级或列级分辨率。 1 = 发生冲突时,获胜者的整个逻辑记录将覆盖丢失端的整个逻辑记录。 值 1 既可用于逻辑记录级别的检测,也可用于行或列级别的检测。 |
partition_options | tinyint | 定义项目数据的分区方式,当所有行只属于一个分区或只属于一个订阅时,这将可以实现性能优化。 partition_options可以是以下值之一。 0 = 项目筛选是静态的,或者不会为每个分区生成唯一的数据子集,即“重叠”分区。 1 = 分区重叠,订阅服务器上进行的 DML 更新无法更改行所属的分区。 2 = 项目筛选会产生非重叠分区,但多个订阅服务器可以接收同一分区。 3 = 项目筛选将生成每个订阅唯一的非重叠分区。 |
name | sysname | 分区的名称。 |
另请参阅
通过参数化筛选器为合并发布管理分区
复制表 (Transact-SQL)
复制视图 (Transact-SQL)
sp_addmergepartition (Transact-SQL)
sp_helpmergepartition (Transact-SQL)