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 - Serveradministration » MobiLink-Server-APIs » Synchronisationsskripten in Java erstellen » Referenz der MobiLink-Server-API für Java » DownloadTableData-Schnittstelle

 

getUpsertPreparedStatement-Methode

Syntax
public java.sql.PreparedStatement getUpsertPreparedStatement( ) throws SQLException
Bemerkungen

Gibt eine java.sql.PreparedStatement-Instanz zurück, mit der der Benutzer dem Download einer Synchronisation upsert-Vorgänge (Einfügen oder Aktualisieren) hinzufügen kann. Die vorbereitete Anweisung gilt für die DownloadTableData-Instanz und enthält einen Parameter für jede Spalte in der Tabelle.

Um einen Einfüge- oder Aktualisierungsvorgang in den Download einzubeziehen, legen Sie alle Spaltenwerte in java.sql.PreparedStatement ein und rufen anschließend die Methode java.sql.PreparedStatement.executeUpdate auf. Beim Aufruf von java.sql.PreparedStatement.executeUpdate in der vorbereiteten Anweisung wird der Wert 0 zurückgegeben, wenn der Einfüge- oder Aktualisierungsvorgang gefiltert wurde. Der Wert 1 wird zurückgegeben, wenn der Vorgang nicht gefiltert wurde. Ein Vorgang wird gefiltert, wenn er in dieselben Synchronisation hochgeladen wurde.

Hinweis

Legen Sie alle Spaltenwerte für Download-Einfüge- und Download-Aktualisierungsvorgänge fest.

Rückgabe

Eine java.sql.PreparedStatement-Instanz zum Hinzufügen von Upsert-Vorgängen zum Download.

Ausnahmen
  • SQLException   Wird ausgelöst, wenn es Probleme beim Abrufen der Upsert-Instanz java.sql.PreparedStatement gibt.

Siehe auch
Beispiel

Im folgenden Beispiel verwendet die Methode setDownloadInserts die Methode DownloadTableData.getUpsertPreparedStatement, um eine vorbereitete Anweisung für Zeilen abzurufen, die Sie einfügen oder aktualisieren möchten. Die Methoden java.sql.PreparedStatement.setInt und PreparedStatement.setString legen die Spaltenwerte fest, und die Methode PreparedStatement.executeUpdate legt die Zeilenwerte im Download fest.

void setDownloadInserts(DownloadTableData td) { 
    java.sql.PreparedStatement insert_ps = td.getUpsertPreparedStatement();

    // This is the same as executing the following SQL statement:
    // INSERT INTO remoteOrders(pk, col1) VALUES (2300, "truck");
    insert_ps.setInt(1, 2300); 
    insert_ps.setString(2, "truck");

    int update_result = insert_ps.executeUpdate();
    if (update_result == 0) {
        // Insert was filtered because it was uploaded 
        // in the same synchronization.
    }
    else {
        // Insert was not filtered.
    }
    insert_ps.close();
}