Die Tabellendefinitionen für die Datenbank CustDB befinden sich in plattformspezifischen Dateien im Unterverzeichnis %SQLANYSAMP16%\MobiLink\CustDB.
Ein Entity-Relationship-Diagramm der CustDB-Tabellen finden Sie unter Die Beispieldatenbankanwendung CustDB.
Sowohl die konsolidierte als auch die entfernte Datenbank enthält die folgenden fünf Tabellen. Die Definitionen unterscheiden sich jedoch jeweils geringfügig voneinander.
Die Tabelle ULCustomer enthält eine Liste von Kunden.
In der entfernten Datenbank besitzt ULCustomer folgende Spalten:
cust_id Eine Primärschlüsselspalte mit einer eindeutigen Ganzzahlkennung für den Kunden
cust_name Eine Zeichenfolge von 30 Zeichen Länge, die den Namen des Kunden enthält
In der konsolidierten Datenbank besitzt ULCustomer folgende zusätzliche Spalte:
last_modified Einen Zeitstempel mit dem Zeitpunkt der letzten Änderung der Zeile. Diese Spalte wird für die Synchronisation auf Zeitstempelbasis benutzt.
Die Tabelle ULProduct enthält eine Liste von Produkten.
In der entfernten und der konsolidierten Datenbank enthält die Tabelle ULProduct außerdem folgende Spalten:
prod_id Eine Primärschlüsselspalte mit einer eindeutigen Ganzzahlkennung für das Produkt
price Eine Ganzzahl, die den Einheitenpreis angibt
prod_name Eine Zeichenfolge von 30 Zeichen Länge, die den Namen des Produkts enthält
Die Tabelle ULOrder enthält eine Liste mit Bestellungen, einschließlich Details zu dem Kunden, der die Bestellung aufgegeben hat, dem Mitarbeiter, der die Bestellung entgegengenommen hat, und dem bestellten Produkt.
In der entfernten Datenbank besitzt ULOrder folgende Spalten:
order_id Eine Primärschlüsselspalte mit einer eindeutigen Ganzzahlkennung für die Bestellung
cust_id Eine Fremdspalte, die ULCustomer referenziert
prod_id Eine Fremdspalte, die ULProduct referenziert
emp_id Eine Fremdspalte, die ULEmployee referenziert
disc Eine Ganzzahl, die den Rabatt für die Bestellung enthält
quant Eine Ganzzahl, die die Anzahl der bestellten Produkte enthält
notes Eine Zeichenfolge von 50 Zeichen Länge, die Hinweise zur Bestellung enthält
status Eine Zeichenfolge von 20 Zeichen Länge, die den Status der Bestellung enthält
In der konsolidierten Datenbank besitzt ULOrder folgende zusätzliche Spalte:
last_modified Einen Zeitstempel mit dem Zeitpunkt der letzten Änderung der Zeile. Diese Spalte wird für die Synchronisation auf Zeitstempelbasis benutzt.
Die Tabelle ULOrderIDPool ist ein Primärschlüsselpool für ULOrder.
In der entfernten Datenbank besitzt ULOrderIDPool folgende Spalte:
pool_order_id Eine Primärschlüsselspalte mit einer eindeutigen Ganzzahl, die die Bestell-ID angibt
In der konsolidierten Datenbank besitzt ULOrderIDPool folgende zusätzliche Spalten:
pool_emp_id Eine Ganzzahlspalte, die die Mitarbeiter-ID des Eigentümers der entfernten Datenbank enthält, dem die Bestell-ID zugeordnet ist
last_modified Einen Zeitstempel mit dem Zeitpunkt der letzten Änderung der Zeile.
Die Tabelle ULCustomerIDPool ist ein Primärschlüsselpool für ULCustomer.
In der entfernten Datenbank besitzt ULCustomerIDPool folgende Spalte:
pool_cust_id Eine Primärschlüsselspalte mit einer eindeutigen Ganzzahl, die die Kunden-ID angibt
In der konsolidierten Datenbank besitzt ULCustomerIDPool folgende zusätzliche Spalten:
pool_emp_id Eine Ganzzahlspalte mit der Mitarbeiter-ID, die für einen neuen auf einer entfernten Datenbank erstellten Mitarbeiter verwendet wird.
last_modified Einen Zeitstempel mit dem Zeitpunkt der letzten Änderung der Zeile.
Die folgenden Tabellen sind nur in der konsolidierten Datenbank enthalten:
Die ULIdentifyEmployee_nosync-Tabelle ist sowohl in der konsolidierten Datenbank als auch in der entfernten Datenbank enthalten. Sie hat eine einzige Spalte:
emp_id Diese Primärschlüsselspalte enthält eine Ganzzahl, die für eine Mitarbeiter-ID in der entfernten Datenbank steht.
Die Tabelle ULEmployee ist nur in der konsolidierten Datenbank enthalten. Sie enthält eine Liste von Vertriebsmitarbeitern.
Die Tabelle ULEmployee hat die folgenden Spalten:
emp_id Eine Primärschlüsselspalte mit einer eindeutigen Ganzzahlkennung für den Mitarbeiter
emp_name Eine Zeichenfolge von 30 Zeichen Länge, die den Namen des Mitarbeiters enthält
Die Tabelle ULEmpCust steuert, welche Kundenbestellungen übertragen werden. Wenn der Mitarbeiter eine neue Kundenbestellung braucht, erzwingt die Eingabe der Mitarbeiter-ID und der Kunden-ID den Download der Bestellungen des betreffenden Kunden.
emp_id Ein Fremdschlüssel für ULEmployee.emp_id
cust_id Ein Fremdschlüssel für ULCustomer.cust_id. Der Fremdschlüssel umfasst emp_id und cust_id
action Ein Zeichen, das ermittelt, ob ein Mitarbeiterdatensatz aus der entfernten Datenbank gelöscht werden soll. Wenn der Mitarbeiter die Bestellungen eines Kunden nicht mehr benötigt, sollte dieser Wert auf D (löschen) gesetzt werden. Wenn die Bestellungen noch gebraucht werden, sollte der Wert NULL sein.
In diesem Fall muss eine logische Löschung verwendet werden, sodass die konsolidierte Datenbank feststellen kann, welche Zeilen aus der Tabelle ULOrder gelöscht werden sollen. Wenn die Löschungen übertragen wurden, können alle Datensätze für diesen Mitarbeiter mit dem Aktionswert D ebenfalls aus der konsolidierten Datenbank gelöscht werden.
last_modified Einen Zeitstempel mit dem Zeitpunkt der letzten Änderung der Zeile. Diese Spalte wird für die Synchronisation auf Zeitstempelbasis benutzt.
Diese Tabellen sind nur in der konsolidierten Datenbank vorhanden. Sie dienen zur Konfliktlösung und enthalten dieselben Spalten wie ULOrder. In SQL Anywhere und Microsoft SQL Server handelt es sich dabei um temporäre Tabellen. In Adaptive Server Enterprise sind dies normale Tabellen und @@spid. DB2 LUW und Oracle haben keine temporären Tabellen. MobiLink muss daher feststellen können, welche Zeilen dem synchronisierenden Benutzer gehören. Da es sich um Basistabellen handelt, können fünf sychronisierende Benutzer jeweils eine Zeile in diesen Tabellen haben.
Weitere Hinweise zu @@spid finden Sie unter Variablen.
![]() |
Kommentieren Sie diese Seite in DocCommentXchange.
|
Copyright © 2013, SAP AG oder ein SAP-Konzernunternehmen. - SAP Sybase SQL Anywhere 16.0 |