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

SAP Sybase SQL Anywhere 16.0 (Deutsch) » SQL Anywhere Server - Programmierung » Embedded SQL » Senden und Abrufen langer Werte mit Embedded SQL

 

LONG-Daten mit statischem SQL senden

Senden Sie LONG-Werte mit statischem SQL aus einer Embedded SQL-Anwendung an die Datenbank.

Voraussetzungen

Es gibt keine Voraussetzungen für diese Aufgabe.

 Aufgabe
  1. Deklarieren Sie eine Hostvariable vom Typ DECL_LONGVARCHAR, DECL_LONGVARCHAR oder DECL_LONGBINARY, wie erforderlich.

  2. Wenn Sie NULL senden, setzen Sie die Indikatorvariable auf einen negativen Wert.

  3. Stellen Sie das stored_len-Feld der Hostvariablenstruktur auf die Anzahl der Byte der Daten im Array-Feld.

  4. Senden Sie die Daten, indem Sie den Cursor öffnen oder die Anweisung ausführen.

Ergebnisse

Die Embedded SQL-Anwendung ist bereit, LONG-Werte an die Datenbank zu senden.

Beispiel

Das folgende Codefragment illustriert den Mechanismus, der zum Senden von LONG VARCHAR-Daten mittels Static Embedded SQL verwendet wird. Er dient nur zur Illustration und ist nicht für eine tatsächliche Verwendung bestimmt.



#define DATA_LEN 12800
EXEC SQL BEGIN DECLARE SECTION;
// SQLPP initializes longdata.array_len
DECL_LONGVARCHAR(128000) longdata;
EXEC SQL END DECLARE SECTION;

void set_test_var()
{
  // init longdata for sending data
  memset( longdata.array, 'a', DATA_LEN );
  longdata.stored_len = DATA_LEN;

  printf( "Setting test_var to %d a's\n", DATA_LEN );
  EXEC SQL SET test_var = :longdata;
}

 Siehe auch