-
CREATE TABLE mit DEFAULT Wert aus Funktion
Hallo Zusammen
Ich muss eine Tabelle mit einer TIMESTAMP Spalte erstellen welches als Default Wert die UTC-Zeit liefert.
Da meine OS/400 Version V5R2M0 ist erhalte ich die UTC-Zeit meines Wissens nach nur mit der Formel
CURRENT TIMESTAMP - CURRENT TIMEZONE
Die obengenannte Formel verträgt sich leider nicht mit einem CREATE TABLE Statement.
Beispiel:
create table testtab (dat timestamp default current timestamp - current timezone)
Dabei erscheint die Fehlermeldung:
ERROR [42000] [IBM][iSeries Access ODBC-Treiber][DB2 UDB]SQL0104 - Token - ungültig. Gültige Token: AS NO FOR NOT FILE WITH CCSID CHECK UNIQUE DEFAULT PRIMARY.
Nun meine Fragen:
Gibt es hierzu eine Umgehungslösung welche in einem CREAT TABLE (ohne Trigger) erstellt werden kann?
Können Funktionen generell nicht in DEFAULT-Klauseln verwendet werden?
Funktionieren meine "Anforderungen" in neueren OS/400 Releases?
Vielen Dank
Daniel
-
Die ist leider eine Sache für einen Insert-Trigger.
-
Ganz pragmatisch würde ich einfach den normalen Current Timestamp vorsehen, und mir die Current Timezone in einem weiteren Feld merken.
Wenn mans wirklich in UTC umrechnen muß, und es später im Prozeß erst einmal umgerechnet hat, kann man das ja entsprechend updaten. Du hättest dann nur eine zusätzliche Spalte, die nicht angefordert worden war.
-
Wieso einfach wenn es auch kompliziert geht ....
Ich hab da noch einige Rahmenbedingungen, weshalb ich keine zusätzliche Spalte erstellen kann oder auch keinen Default-Wert per Insert-Statement übergeben kann.
Grob gesagt geht es um ein SQL Übersetzungsprogramm welches transparent für MS SQL Applikationen eingesetzt werden kann. Dadurch wird der Applikation vorgegaukelt, dass die Applikation mit einer MS SQL DB verbunden ist, in Wirklichkeit aber mit der iSeries kommuniziert.
Im grossen und ganzen läuft die Sache sehr zufriedenstellend. Klar ist, dass nicht alles 100% übersetzt werden kann. Wie es auch das Beispiel mit dem DEFAULT-Wert zeigt. Aber Probleme sind ja da um gelöst zu werden.
Bevorzugteste Lösung wäre eine UDF welche in der DEFAULT-Klausel angegeben werden könnte. Da dies nicht geht muss ich mich langsam mit dem Gedanken an einem INSERT-Trigger anfreunden ...
Similar Threads
-
By cheffe1008 in forum NEWSboard Programmierung
Antworten: 4
Letzter Beitrag: 21-09-06, 16:05
-
By loeweadolf in forum NEWSboard Programmierung
Antworten: 3
Letzter Beitrag: 02-08-05, 13:52
-
By JonnyRico in forum NEWSboard Programmierung
Antworten: 25
Letzter Beitrag: 05-11-04, 15:17
-
By Willi1 in forum IBM i Hauptforum
Antworten: 1
Letzter Beitrag: 03-05-02, 08:38
-
By lorenzen in forum IBM i Hauptforum
Antworten: 4
Letzter Beitrag: 21-03-01, 13:44
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