可以使用此存储过程在 dbmlsync 已验证 MobiLink 服务器收到上载后添加自定义操作。
名称 | 值 | 说明 |
---|---|---|
failure cause (in) |
请参见注释部分中的值范围。 |
导致上载失败的原因。有关详细信息,请参见注释。 |
upload status (in) |
retry | committed | failed | unknown |
指定在 dbmlsync 试图验证是否接收到上载时 MobiLink 服务器所返回的状态。 retry - MobiLink 服务器与 dbmlsync 中的上载开始位置的日志偏移值不同。MobiLink 服务器未提交上载。dbmlsync 实用程序会尝试发送从新的日志偏移处开始的另一个上载。 committed - MobiLink 服务器已接收到上载并已提交。 failed - MobiLink 服务器未提交上载。 unknown - MobiLink 服务器未确认上载。无法确定是否已提交上载。 |
publication_n (in) |
发布 |
不建议使用。改用 subscription_n。正被同步的发布,其中 n 是一个整数。每个正在同步的发布都有一个 publication_n 条目。n 的编号从零开始。 |
MobiLink user (in) |
MobiLink 用户名 |
您正在为其进行同步的 MobiLink 用户。 |
script version (in) |
脚本版本名称 |
将用于同步的 MobiLink 脚本版本。 |
authentication value (in) | 值 |
该值表示 dbmlsync 尝试向 MobiLink 服务器进行身份验证时的结果。该值由服务器上的 authenticate_user、authenticate_user_hashed 或 authenticate_parameters 脚本生成。当 upload status 为 unknown,或者由于远程数据库和统一数据库中存储的日志偏移之间存在冲突而重发上载之后调用 upload_end 挂接时,此值为空字符串。 |
subscription_n (in) | 预订名称 | 正在进行同步的预订的名称,其中 n 是一个整数。每个正在同步的预订都有一个 subscription_n 条目。n 的编号从零开始。 |
如果以该名称命名的过程存在,那么它将在 dbmlsync 已发送上载并收到来自 MobiLink 服务器的确认后立即被调用。
执行事务性上载或增量上载时,将在发送完上载的每个数据段之后调用此挂接。在此类情况下,每次调用挂接时上载状态均为 "未知"(但最后一次调用除外)。
该过程的操作将在执行后立即被提交。
#hook_dict 表中 failure cause 行参数的可选值为:
任何具有 MANAGE REPLICATION 系统特权的用户都能创建挂接过程。但是,为了确保挂接能够访问用来将信息传入和传出挂接的 #hook_dict 表,挂接必须满足以下要求之一:
由具有 SELECT ANY TABLE 和 UPDATE ANY TABLE 系统特权的用户拥有。
使用 CREATE PROCEDURE 语句的 SQL SECURITY INVOKER 子句定义。
假定您使用下面的表记录远程数据库上的同步事件。
CREATE TABLE SyncLog ( "event_id" integer NOT NULL DEFAULT autoincrement , "event_time" timestamp NULL, "event_name" varchar(128) NOT NULL , "subs" varchar(1024) NULL , PRIMARY KEY ("event_id") ) |
以下代码为每个同步记录了上载的结束信息。
CREATE PROCEDURE sp_hook_dbmlsync_upload_end () BEGIN DECLARE subs_list VARCHAR(1024); -- build a list of subscriptions being synchronized SELECT LIST(value) INTO subs_list FROM #hook_dict WHERE name LIKE 'subscription_%'; -- log the event INSERT INTO SyncLog(event_time, event_name, subs) VALUES( CURRENT TIMESTAMP, 'sp_hook_dbmlsync_upload_end', subs_list ); END |
![]() |
使用DocCommentXchange讨论此页。
|
版权 © 2013, SAP 股份公司或其关联公司. - SAP Sybase SQL Anywhere 16.0 |