Im Kontext der SQL-Abfragesprache fügt die Anweisung 'add' einen Datensatz oder eine Gruppe von Datensätzen zu einer Datenbank hinzu.
EGL fügt die Informationen auf Basis der Werte in den Schlüsselfeldern der Datensatzvariablen hinzu.
EGL erstellt eine SQL-Anweisung INSERT in Ihrem generierten Code auf Basis der Werte und Eigenschaften der SQL-Datensatzvariablen in Ihrer EGL-Anweisung 'add'. Weitere Informationen zu diesem impliziten SQL-Code finden Sie unter SQL-Datenzugriff. Alternativ können Sie eine Direktive vom Typ '#sql' verwenden, um Ihre eigene eingebettete SQL-Anweisung INSERT zu schreiben (siehe sql (Direktive)).
Wenn die Anweisung 'add' eine einzelne SQL-Datensatzvariable angibt, erstellt die Anweisung eine einzelne Zeile in der Datenbank. Sie können auch eine dynamische Feldgruppe aus SQL-Datensatzvariablen angeben. In diesem Fall erstellt die Anweisung für jedes Member der Feldgruppe jeweils eine Zeile.

INSERT INTO Tabellenname
(Spalte01, ... SpalteNN)
values (:Datensatzelement01, ... :DatensatzelementNN)
Die Schlüsselwerte im Datensatz legen die logische Position der Daten in der Tabelle fest. Das Datenbankmanagementsystem bearbeitet Datensätze ohne Schlüssel gemäß der SQL-Tabellendefinition und den Regeln der Datenbank. Der Datensatzabschnitt, auf dem Ihre Datensatzvariable basiert, ordnet Datensatzfelder zu Spalten in der Datenbanktabelle zu. EGL verwendet diese Zuordnungen, um die Zuordnung von Werten in der Anweisung INSERT zu bestimmen. Die Verwendung von Hostvariablen, d. h. von Variablen, die in der Sprache für das SQL-Hosting (in diesem Fall EGL) definiert sind, wird durch einen vorangestellten Doppelpunkt angezeigt. Weitere Informationen finden Sie unter Hostvariablen.
Wenn Sie ein Datensatzfeld als schreibgeschützt deklariert haben, wird dieses Feld nicht in die generierte SQL-Anweisung INSERT eingeschlossen, und das Datenbankmanagementsystem setzt den Wert der zugehörigen SQL-Tabellenspalte auf den Standardwert, der beim Definieren der Spalte angegeben wurde.
Das folgende Beispiel zeigt die Anweisung 'add':
if (userRequest == "A")
try
add record1;
onException(sqlEx SQLException)
myErrorHandler(12);
end
end
try
add employees;
onException(sqlEx SQLException)
sysLib.rollback();
end