Der Zweck eines Exits besteht in der Formatierung oder Änderung der CHAR-Werte, die den Spalten für Datum (DATE), Zeit (TIME) und Zeitmarke (TIMESTAMP) entsprechen. Die Exits sind besonders nützlich, wenn Sie Ihr Vorhaben nicht über einen anderen Mechanismus wie JBDC-Treibereigenschaften oder DB2-Vorcompileroptionen realisieren können.
Bei der Eingabe in die Datenbank bleibt der Inhalt der Hostvariablen unverändert; nur der an die Datenbankspalte gesendete Wert wird geändert. Bei der Ausgabe wird der Inhalt der Hostvariablen geändert, der Spaltenwert bleibt jedoch unverändert.
Die bereitgestellten Exits sind Vorlagen, die keine Auswirkungen haben.
Record TstabN type SQLRecord
{tableNames = [["ME.MYTABLE"]], fieldsMatchColumns = yes}
10 TS2 char(26) {column="TS2", isSqlNullable=yes, sqlDataCode=392};
10 TS1 char(26) {column="TS1", isSqlNullable=yes, sqlDataCode=392};
10 DATE1 char(10) {column="DATE1", isSqlNullable=yes, sqlDataCode=384};
10 TIME1 char(8) {column="TIME1", isSqlNullable=yes, sqlDataCode=388};
end
dataitem tstype char(26) {sqlDataCode=392} end
dataitem datetype char(10) {sqlDataCode=384} end
dataitem timetype char(8) {sqlDataCode=388} end
Die folgenden sqlDataCode-Werte veranlassen einen Exitaufruf:
| sqlDataCode-Werte | Nullwert möglich | SQL-Spaltentyp |
|---|---|---|
| 384 385 |
Ja Nein |
DATE |
| 388 389 |
Ja Nein |
TIME |
| 392 393 |
Ja Nein |
TIMESTAMP |
Sie können eine Benutzervorgabe so definieren, dass bei Verwendung der EGL-SQL-Funktion RETRIEVE die sqlDataCode-Werte automatisch in einen für Sie erstellten Datensatzabschnitt eingefügt werden werden. Weitere Informationen finden Sie in 'Benutzervorgaben für SQL-Abrufe definieren'.
Der Exit für ein bestimmtes Feld wird während der Datenbankeingabe nicht aufgerufen, wenn das Feld null ist. Dasselbe gilt für die Datenbankausgabe, wenn die Spalte null ist.