Die meisten Synchronisationsskripten können Parameter vom MobiLink-Server erhalten. Ausführliche Informationen zu den Parametern, die Sie in den Skripten verwenden können, finden Sie unter Synchronisationsereignisse.
Es gibt zwei Möglichkeiten, Parameter in SQL-Skripten anzugeben:
Benannte Skriptparameter
Fragezeichen (in SQL-Skripten veraltet)
Benannte Parameter bieten folgende Vorteile gegenüber (veralteten) Fragezeichen:
Mit benannten Parametern können Sie beliebige Teilmengen der verfügbaren Parameter in beliebiger Reihenfolge angeben.
Mit Ausnahme der I/O-Parameter können Sie einen benannten Parameter mehrmals in einem Skript angeben.
Wenn Sie benannte Parameter verwenden, können Sie die entfernte ID in Ihren Skripten angeben. Dies ist die einzige Möglichkeit, entfernte IDs in Skripten festzulegen.
Sie können Ihre eigenen benannten Parameter erstellen. Siehe Benutzerdefinierte benannte Parameter.
Benannte Parameter und Fragezeichen dürfen nicht gemeinsam in einem Skript verwendet werden.
Es gibt vier Arten von benannten Parametern in MobiLink. Wenn Sie einen benannten Parameter angeben möchten, müssen Sie ihm seinen Typ wie folgt als Präfix voranstellen:
Typen benannter Parameter | Präfix | Beispiele |
---|---|---|
Systemparameter | s. | {ml s.remote_id} |
Zeilenparameter. (Der Spaltenname. Falls der Spaltenname Leerzeichen enthält, setzen Sie ihn in Anführungszeichen oder eckige Klammern.) | r. |
{ml r.cust_id} {ml r."Spaltenname"} |
Alte Zeilenparameter. (Wird nur in upload_update-Skripten verwendet, um die Pre-Image-Spaltenwerte festzulegen. Falls der Spaltenname Leerzeichen enthält, setzen Sie ihn in Anführungszeichen oder eckige Klammern.) | o. |
{ml o.cust_name} {ml o."Spaltenname"} |
Authentifizierungsparameter. Siehe Authentifizierungsparameter. | a. | {ml a.1} |
Benutzerdefinierte Parameter. Siehe Benutzerdefinierte benannte Parameter. | u. oder ui. |
|
Sie referenzieren einen Skriptparameter nach Namen, indem Sie den Parameter in geschweifte Klammern setzen und ihm das Präfix voranstellen wie in {ml Parameter }. Zum Beispiel, {ml s.action_code}. Geschweifte Klammern entsprechen der ODBC-Konvention.
Der Einfachheit halber können Sie einen größeren Codeteil in geschweifte Klammern setzen, solange er keine Schemanamen enthält, die mit dem Namen eines MobiLink-Skriptparameters identisch sind. Beispielsweise sind die folgenden upload_insert-Skripten gültig und äquivalent:
INSERT INTO t ( id, c0 ) VALUES( {ml r.id}, {ml r.c0} ) |
und
INSERT INTO t ( is, c0 ) VALUES({ml r.id, r.c0}) |
und
{ml INSERT INTO t ( id, c0 ) VALUES( r.id, r.c0 ) } |
Die Darstellung von Parametern durch Fragezeichen ist in SQL-Skripten veraltet. Es wird dringend empfohlen, stattdessen benannte Parameter zu verwenden. Siehe Benannte Skriptparameter und Benutzerdefinierte benannte Parameter.
In ODBC werden Parameter durch Fragezeichen dargestellt. Wenn Sie Fragezeichen in Ihren SQL-Skripten in MobiLink verwenden möchten, schreiben Sie für jeden Parameter ein einzelnes Fragezeichen in Ihr Skript. Der MobiLink-Server ersetzt jedes Fragezeichen durch den Wert eines Parameters. Er ersetzt die Werte in der Reihenfolge, in der die Parameter in der Skriptdefinition erscheinen.
Einige Parameter sind optional. Ein Parameter ist nur dann optional, wenn keine weiteren Parameter angegeben werden. Sie müssen beispielsweise Parameter 1 verwenden, wenn Sie Parameter 2 verwenden möchten. Die Reihenfolge der Parameter muss so sein, wie sie für jedes Ereignis angegeben wurde. Siehe Synchronisationsereignisse.
Die folgenden Kommentarformen werden erkannt:
Präfix mit doppeltem Bindestrich (--)
Präfix mit doppeltem Schrägstrich (//)
Blockkommentar (/* */)
Bei den ersten beiden Formen wird der Text bis zum Zeilenende ignoriert. Bei der dritten Form wird der gesamte Text zwischen dem Präfix /* und dem Suffix */ ignoriert. Ein Blockkommentar kann nicht verschachtelt werden.
Andere herstellerspezifische Kommentartypen werden nicht erkannt und sollten nicht verwendet werden, um Referenzen zu einem benannten Parameter zu kommentieren.
Systemparameter | Ereignistyp | Verfügbarkeit des Parameters in Ereignissen |
---|---|---|
action_code |
Verbindung |
Der Parameter action_code ist in den folgenden Ereignissen verfügbar:
|
authentication_message | Verbindung |
Der authentication_message-Parameter ist in den folgenden Ereignissen verfügbar:
|
authentication_status |
Verbindung |
Der Parameter authentication_status ist in den folgenden Ereignissen verfügbar:
|
bytes |
Verbindung und Tabelle |
Der Parameter bytes ist in den folgenden Ereignissen verfügbar:
|
conflicted_deletes |
Verbindung und Tabelle |
Der Parameter conflicted_deletes ist in den folgenden Ereignissen verfügbar:
|
conflicted_inserts |
Verbindung und Tabelle |
Der Parameter conflicted_inserts ist in den folgenden Ereignissen verfügbar:
|
conflicted_updates |
Verbindung und Tabelle |
Der Parameter conflicted_updates ist in den folgenden Ereignissen verfügbar:
|
connection_retries |
Verbindung |
Der Parameter conflicted_retries ist in den folgenden Ereignissen verfügbar:
|
deadlocks |
Verbindung und Tabelle |
Der Parameter deadlocks ist in den folgenden Ereignissen verfügbar:
|
deleted_rows |
Verbindung und Tabelle |
Der Parameter deleted_rows ist in den folgenden Ereignissen verfügbar:
|
error_code |
Verbindung |
Der Parameter error_code ist in den folgenden Ereignissen verfügbar:
|
error_message |
Verbindung |
Der Parameter error_message ist in den folgenden Ereignissen verfügbar:
|
errors |
Verbindung und Tabelle |
Der Parameter errors ist in den folgenden Ereignissen verfügbar:
|
event_name |
Verbindung und Tabelle |
Der Parameter event_name ist in den folgenden Ereignissen verfügbar:
|
fetched_rows |
Verbindung und Tabelle |
Der Parameter fetched_rows ist in den folgenden Ereignissen verfügbar:
|
file_authentication_code |
Verbindung |
Der Parameter file_authentication_code ist in den folgenden Ereignissen verfügbar:
|
filename |
Verbindung |
Der Parameter filename ist in den folgenden Ereignissen verfügbar:
|
file_size |
Verbindung |
Der Parameter file_size ist in den folgenden Ereignissen verfügbar:
|
filtered_rows |
Verbindung und Tabelle |
Der Parameter filtered_rows ist in den folgenden Ereignissen verfügbar:
|
generation_number |
Verbindung |
Der Parameter generation_number ist in den folgenden Ereignissen verfügbar:
|
hashed_new_password |
Verbindung |
Der Parameter hashed_new_password ist in den folgenden Ereignissen verfügbar:
|
hashed_password |
Verbindung |
Der Parameter hashed_password ist in den folgenden Ereignissen verfügbar:
|
ignored_deletes |
Verbindung und Tabelle |
Der Parameter ignored_deletes ist in den folgenden Ereignissen verfügbar:
|
ignored_inserts |
Verbindung und Tabelle |
Der Parameter ignored_inserts ist in den folgenden Ereignissen verfügbar:
|
ignored_updates |
Verbindung und Tabelle |
Der Parameter ignored_updates ist in den folgenden Ereignissen verfügbar:
|
inserted_rows |
Verbindung und Tabelle |
Der Parameter inserted_rows ist in den folgenden Ereignissen verfügbar:
|
last_download |
Verbindung |
Der Parameter last_download ist in den folgenden Ereignissen verfügbar:
|
last_publication_download |
Verbindung |
Der Parameter last_publication_download ist in den folgenden Ereignissen verfügbar:
|
last_publication_upload |
Verbindung |
Der Parameter last_publication_upload ist in den folgenden Ereignissen verfügbar:
|
last_table_download |
Tabelle |
Der Parameter last_table_download ist in den folgenden Ereignissen verfügbar:
|
maximum_time |
Verbindung und Tabelle |
Der Parameter maximum_time ist in den folgenden Ereignissen verfügbar:
|
minimum_time |
Verbindung und Tabelle |
Der Parameter minimum_time ist in den folgenden Ereignissen verfügbar:
|
new_password |
Verbindung |
Der Parameter new_password ist in den folgenden Ereignissen verfügbar:
|
next_last_download |
Verbindung |
Der Parameter next_last_download ist in den folgenden Ereignissen verfügbar:
|
number_of_calls |
Verbindung und Tabelle |
Der Parameter number_of_calls ist in den folgenden Ereignissen verfügbar:
|
odbc_state |
Verbindung |
Der Parameter odbc_state ist in den folgenden Ereignissen verfügbar:
|
password |
Verbindung |
Der Parameter password ist in den folgenden Ereignissen verfügbar:
|
publication_name |
Verbindung |
Der Parameter publication_name ist in den folgenden Ereignissen verfügbar:
|
remote_id |
Verbindung und Tabelle |
Der Parameter remote_id ist in den folgenden Ereignissen verfügbar:
|
remote_key |
Verbindung |
Der Parameter remote_key ist in den folgenden Ereignissen verfügbar:
|
script_version | Verbindung und Tabelle |
Der script_version-Parameter ist in den folgenden Ereignissen verfügbar:
HinweisAuf die Skriptversion kann aus Java- und .NET-Skripten heraus zugegriffen werden, indem die getVersion-Methode auf die DBConnectionContext-Klassen angewendet wird. Siehe DBConnectionContext.getVersion-Methode [MobiLink-Server Java] und DBConnectionContext.GetVersion-Methode [MobiLink-Server .NET]. |
subdir |
Verbindung |
Der Parameter subdir ist in den folgenden Ereignissen verfügbar:
|
subscription_id |
Verbindung |
Der Parameter subscription_id ist in den folgenden Ereignissen verfügbar:
|
synchronization_ok |
Verbindung und Tabelle |
Der Parameter synchronization_ok ist in den folgenden Ereignissen verfügbar:
|
synchronized_tables |
Verbindung |
Der Parameter synchronized_tables ist in den folgenden Ereignissen verfügbar:
|
table |
Verbindung und Tabelle |
Der Parameter table ist in den folgenden Ereignissen verfügbar:
|
total_time |
Verbindung und Tabelle |
Der Parameter total_time ist in den folgenden Ereignissen verfügbar:
|
updated_rows |
Verbindung und Tabelle |
Der Parameter updated_rows ist in den folgenden Ereignissen verfügbar:
|
username |
Verbindung und Tabelle |
Der Parameter username ist in den folgenden Ereignissen verfügbar:
|
warnings |
Verbindung und Tabelle |
Der Parameter warnings ist in den folgenden Ereignissen verfügbar:
|
Benutzerdefinierte benannte Parameter
Authentifizierungsparameter
![]() |
Kommentieren Sie diese Seite in DocCommentXchange.
|
Copyright © 2013, SAP AG oder ein SAP-Konzernunternehmen. - SAP Sybase SQL Anywhere 16.0 |