Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 11.0.1 (Deutsch) » MobiLink - Clientadministration » SQL Anywhere-Clients für MobiLink » Ereignis-Hooks für SQL Anywhere-Clients

 

sp_hook_dbmlsync_download_table_begin

Verwenden Sie diese gespeicherte Prozedur, um benutzerdefinierte Aktionen direkt vor dem Download jeder Tabelle einzufügen.

Zeilen in der Tabelle #hook_dict

Name

Wert

Beschreibung

table name (in)

Tabellenname

Die Tabelle, in der Vorgänge übernommen werden

publication_n (in)

Publikation

Die synchronisierten Publikationen, wobei n eine Ganzzahl ist. Es gibt einen publication_n-Eintrag für jede Publikation im Upload. Die Nummerierung von n beginnt bei Null.

MobiLink user (in)

MobiLink-Benutzername

Der MobiLink-Benutzer, für den Sie synchronisieren

script version (in)

Skriptversionsname

Die MobiLink-Skriptversion, die für die Synchronisation verwendet werden soll

Bemerkungen

Wenn eine Prozedur mit diesem Namen existiert, wird sie für jede Tabelle unmittelbar vor dem Punkt aufgerufen, an dem die aus dem Download kommenden Vorgänge in dieser Tabelle übernommen werden. Die Aktionen dieser Prozedur werden festgeschrieben bzw. zurückgesetzt, wenn der Download festgeschrieben bzw. zurückgesetzt wird.

Siehe auch
Beispiele

Nehmen wir an, Sie verwenden die folgende Tabelle, um Synchronisationsereignisse in der entfernten Datenbank zu protokollieren.

CREATE TABLE SyncLog
(
 "event_id"          INTEGER NOT NULL DEFAULT AUTOINCREMENT ,
   "event_name"       VARCHAR(128) NOT NULL ,
   "ml_user"            VARCHAR(128) NULL ,
   "event_time"         TIMESTAMP NULL,
   "table_name"         VARCHAR(128) NULL ,
   "upsert_count"       VARCHAR(128) NULL ,
   "delete_count"       VARCHAR(128) NULL ,
   "exit_code"          INTEGER NULL ,
   "status_retval"      VARCHAR(128) NULL ,
   "pubs"                VARCHAR(128) NULL ,
   "sync_descr "         VARCHAR(128) NULL , 
    PRIMARY KEY ("event_id"),
);

Das folgende Beispiel protokolliert den MobiLink-Benutzer, den Tabellennamen und den aktuellen Zeitstempel unmittelbar vor dem Download einer Tabelle.

CREATE PROCEDURE sp_hook_dbmlsync_download_table_begin()
BEGIN
    DECLARE tbl VARCHAR(255);

    -- load the table name from #hook_dict
  SELECT #hook_dict.value
   INTO tbl
   FROM #hook_dict
   WHERE #hook_dict.name = 'table name';

  INSERT INTO SyncLog (event_name, ml_user, table_name
    ,event_time)
   SELECT 'download_table_begin', #hook_dict.value, tbl
    ,CURRENT TIMESTAMP
   FROM #hook_dict
   WHERE name = 'MobiLink user' ; 
END;