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) » SQL Anywhere Server - SQL-Referenzhandbuch » Verwendung von SQL » SQL-Anweisungen » SQL-Anweisungen (P-Z)

 

PUT-Anweisung [ESQL]

Mit dieser Anweisung fügen Sie eine Zeile in den angegebenen Cursor ein.

Syntax
PUT Cursorname
{ USING DESCRIPTOR SQLDA-Name | FROM Hostvariable-Liste }
[ INTO { DESCRIPTOR SQLDA-Name | Hostvariable-Liste } ]
[ ARRAY :Zeilenanzahl ]
Cursorname : Bezeichner oder Hostvariable
SQLDA-Name : Bezeichner
Hostvariable-Liste : Kann Indikatorvariablen enthalten
Zeilenanzahl : Ganzzahl oder Hostvariable
Bemerkungen

Fügt eine Zeile in den benannten Cursor ein. Werte für die Spalten werden dem SQLDA oder der Hostvariablenliste in einer Übereinstimmung von eins zu eins mit den Spalten in der INSERT-Anweisung (für einen INSERT-Cursor) oder den Spalten in der Auswahlliste (für einen SELECT-Cursor) entnommen.

Die PUT-Anweisung kann nur für einen Cursor über eine INSERT- oder SELECT-Anweisung verwendet werden, die eine einzelne Tabelle in der FROM-Klausel referenziert oder die eine aktualisierbare Ansicht referenziert, die aus einer einzelnen Basistabelle besteht.

Wenn der Zeiger sqldata im SQLDA der Leerzeiger ist, wird für diese Spalte kein Wert angegeben. Wenn der Spalte ein DEFAULT VALUE zugeordnet ist, wird dieser benutzt. Ansonsten wird NULL verwendet.

Der zweite SQLDA oder die Hostvariablenliste enthält die Ergebnisse der PUT-Anweisung.

Die optionale ARRAY-Klausel kann verwendet werden, um breite Ablagen, die mehr als eine Zeile zur gleichen Zeit einfügen, zu ermöglichen. Dadurch lässt sich die Performance verbessern. Der Ganzzahlwert stellt die Anzahl der einzufügenden Zeilen dar. Der SQLDA muss eine Variable für jeden Eintrag (Anzahl der Zeilen * Anzahl der Spalten) enthalten. Die erste Zeile wird in die SQLDA-Variablen von 0 bis (Spalten pro Zeile)-1 geschrieben, usw.

In einen Cursor einfügen

Bei Scroll-Cursors (wertempfindlich) erscheint die eingefügte Zeile, wenn die neue Zeile mit der WHERE-Klausel übereinstimmt und der keyset-driven Cursor die Datenübernahme nicht abgeschlossen hat. Wenn bei dynamischen Cursors die eingefügte Zeile mit der WHERE-Klausel übereinstimmt, kann die Zeile erscheinen. Unempfindliche Cursors können nicht aktualisiert werden.

Hinweise zum Setzen von LONG VARCHAR- oder LONG BINARY-Werten in die Datenbank finden Sie unter SET-Anweisung.

Berechtigungen

INSERT-Berechtigung ist erforderlich.

Nebenwirkungen

Wenn Sie Zeilen in einen wertsensitiven (Keyset-gesteuerten) Cursor einfügen, erscheinen die eingefügten Zeilen am Ende der Ergebnismenge, auch wenn sie nicht zur WHERE-Klausel der Abfrage passen oder eine ORDER BY-Klausel sie normalerweise an eine andere Stelle in der Ergebnismenge gesetzt hätte. Weitere Hinweise finden Sie unter Zeilen mit einen Cursor ändern.

Siehe auch
Standards und Kompatibilität
  • SQL/2003   Kernfunktion.

Beispiel

Die folgende Anweisung veranschaulicht die Verwendung der PUT-Anweisung in Embedded SQL:

EXEC SQL PUT cur_employee FROM :employeeID, :surname;