-
SQL Datum Unterlassungswert
Ich habe ein Verständnisproblem mit SQL. Wenn ich einen Insert in die Datenbank (DDS-Beschrieben) mache, setzt er alle Datumsfelder (ISO-Format) auf das aktuelle Datum.
Als Beispiel habe ich eine Datei, welche eine alphanumerisches Feld und ein Datum beinhaltet. Wenn ich einen Insert mache in dem ich nur den alphanumerischen Wert mit "Insert" ausgebe bzw. einfüge, setzt er das Datumsfeld auf das aktuelle Datum (2019-11-12).
Wo oder womit kann ich dieses Verhalten steuern ohne die DDS-Beschreibung aufzugeben?
Kann ich dieses Verhalten SQL übergreifend steuern?
-
Hatte einen ähnlichen Fall, allerdings mit CPYF. Ich denke nicht, dass es mit SQL was zu tun hat.
Verdankenswert hat mir seinerzeit Baldur auf die Sprünge geholfen.
siehe hier:
http://newsolutions.de/forum-systemi...843#post106843
kf
-
Wenn Datensätze geschrieben werden, unabhängig ob die Dateien mit SQL oder DDS beschrieben wurden, und Feld-Werte nicht explizit angegeben wurden, wird der Default-Wert stattdessen eingefügt.
Der Default-Wert bei Datums-Feldern ist das aktuelle Datum bzw. die aktuelle Zeit bzw. die aktuelle Zeit-Marke.
Wenn Du andere Default-Werte möchtest, muss Du diese explizit in der Definition der Datei setzen.
Für DDS gibt es auch das Schlüssel-Wort DFT, mit dem ein Default-Wert festgelegt werden kann.
Alternativ, kannst Du ja den gewünschten Default-Wert für die Spalte beim Insert angeben.
Native I/O arbeitet anders als SQL, d.h. da wird immer der komplette Datensatz geschrieben. Damit wird immer der Wert aus der (internen) Datenstruktur des Datensatzes übernommen.
Birgitta
-
Zitat von B.Hauser
Native I/O arbeitet anders als SQL, d.h. da wird immer der komplette Datensatz geschrieben. Damit wird immer der Wert aus der (internen) Datenstruktur des Datensatzes übernommen.
Birgitta
... es sei denn, dass man über ein logische Datei oder View(was man immer tun sollte) schreibt, die das Feld nicht enthält.
D*B
-
Das unterscheidet eben den Rest der Felder von Datum/Zeit/Zeitmarke.
Alle anderen Felder erhalten einen Standardwert je nach Feldtyp.
- Varlen-Felder mit Länge 0
- Char/Nchar mit Space/Blank
- Binary mit x'00'
- Zahlfelder (int, dec, double, decflt, ...) eben die 0
Nur Datumsfelder eben das Current Date/Time/Timestamp.
Wer das nicht will kann ja ebenso ALWNULL (oder NOT NULL bei SQL weglassen) verwenden.
In diesem Fall ist der Unterlassungswert NULL.
-
Hallo allerseits,
herzlichen Dank für eure Mühe.
Hat mir sehr geholfen und es ist nun einiges klarer!
Frank
-
es sei denn, dass man über ein logische Datei oder View(was man immer tun sollte) schreibt
Können Views, die mehr als eine Tabelle beinhalten, auch mit update / write verarbeitet werden?
Das bekomme ich nicht hin (letzte Versuch ist schon etwas her, daher weis ich den Fehler nicht mehr)
Dietlinde Beck
-
Zitat von dibe
Können Views, die mehr als eine Tabelle beinhalten, auch mit update / write verarbeitet werden?
Das bekomme ich nicht hin (letzte Versuch ist schon etwas her, daher weis ich den Fehler nicht mehr)
Dietlinde Beck
An SQL Views kann man einen instead Trigger hängen (den man allerdings mit RLA nicht verarbeiten kann). DDS join LF sind read only, bei SQL kann man nur Felder aus einer Datei updaten. Für das obige Beispiel tritt das Problem allerdings sowieso nicht auf.
D*B
Similar Threads
-
By Peet in forum NEWSboard Programmierung
Antworten: 3
Letzter Beitrag: 06-10-17, 22:35
-
By dholtmann in forum NEWSboard Programmierung
Antworten: 7
Letzter Beitrag: 03-05-16, 09:35
-
By weidenhammer in forum NEWSboard Programmierung
Antworten: 1
Letzter Beitrag: 07-05-15, 11:37
-
By j.k. in forum NEWSboard Programmierung
Antworten: 12
Letzter Beitrag: 15-11-10, 16:31
-
By HoScHiE in forum IBM i Hauptforum
Antworten: 11
Letzter Beitrag: 06-08-01, 14:47
Tags for this Thread
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- You may not post attachments
- You may not edit your posts
-
Foren-Regeln
|
Erweiterte Foren Suche
Google Foren Suche
Forum & Artikel Update eMail
AS/400 / IBM i
Server Expert Gruppen
Unternehmens IT
|
Kategorien online Artikel
- Big Data, Analytics, BI, MIS
- Cloud, Social Media, Devices
- DMS, Archivierung, Druck
- ERP + Add-ons, Business Software
- Hochverfügbarkeit
- Human Resources, Personal
- IBM Announcements
- IT-Karikaturen
- Leitartikel
- Load`n`go
- Messen, Veranstaltungen
- NEWSolutions Dossiers
- Programmierung
- Security
- Software Development + Change Mgmt.
- Solutions & Provider
- Speicher – Storage
- Strategische Berichte
- Systemmanagement
- Tools, Hot-Tips
Auf dem Laufenden bleiben
|
Bookmarks