INSERT
Einfügen von Datenzeilen in eine Tabelle
DSQL, ESQL, PSQL
INSERT INTO target
{ DEFAULT VALUES
| [(<column_list>)] [<override_opt>] <value_source> }
[RETURNING <returning_list> [INTO <variables>]]
<column_list> ::= col_name [, col_name ...]
<override_opt> ::=
OVERRIDING {USER | SYSTEM} VALUE
<value_source> ::= VALUES (<value_list>) | <select_stmt>
<value_list> ::= <ins_value> [, <ins_value> ...]
<ins_value> :: = <value_expression> | DEFAULT
<returning_list> ::= * | <output_column> [, <output_column]
<output_column> ::=
target.*
| <return_expression> [COLLATE collation] [[AS] alias]
<return_expression> ::=
<value_expression>
| [target.]col_name
<value_expression> ::=
<literal>
| <context-variable>
| any other expression returning a single
value of a Firebird data type or NULL
<variables> ::= [:]varname [, [:]varname ...]
| Argument | Beschreibung |
|---|---|
target |
Der Name der Tabelle oder Ansicht, zu der eine neue Zeile oder ein Zeilenstapel hinzugefügt werden soll |
col_name |
Spalte in der Tabelle oder Ansicht |
value_expression |
Ein Ausdruck, dessen Wert zum Einfügen in die Tabelle oder zum Zurückgeben verwendet wird |
return_expression |
Der in der |
literal |
Ein Literal |
context-variable |
Kontextvariable |
varname |
Name einer lokalen PSQL-Variablen |
Die INSERT-Anweisung wird verwendet, um einer Tabelle oder einer oder mehreren Tabellen, die einer Ansicht zugrunde liegen, Zeilen hinzuzufügen:
-
Wenn die Spaltenwerte in einer
VALUES-Klausel übergeben werden, wird genau eine Zeile eingefügt -
Die Werte können stattdessen durch einen
SELECT-Ausdruck bereitgestellt werden, in diesem Fall können null bis viele Zeilen eingefügt werden -
Bei der
DEFAULT VALUES-Klausel werden überhaupt keine Werte angegeben und genau eine Zeile eingefügt.
|
Note
|
Einschränkungen
|
|
Important
|
ALERT :
BEFORE INSERT-TriggersAchten Sie unabhängig von der zum Einfügen von Zeilen verwendeten Methode auf alle Spalten in der Zieltabelle oder -ansicht, die von |