Hinweis zu Problemen CLI/ODBC und DB2 Timestamp
- Dieses Thema hat 5 Antworten und 1 Teilnehmer, und wurde zuletzt aktualisiert vor 18 Jahre, 7 Monaten von
Anonym.
-
AuthorPosts
-
9. Februar 2005 um 12:45 Uhr #2508
AnonymInaktivHallo zusammen,
die Informationen zu diesem Problem sind sehr spärlich, so dass ich es für nützlich halte hier darüber zu informieren.
Seit DB2 UDB V8.2 gibt es (wieder) Probleme in der Darstellung von DB2 TIMESTAMP in CLI/ODBC Anwendungen, beispielsweise MS Access:
MS Access kennt kein Timestamp-Datenattribut, sondern nur das Date/Time-Format. IBM hat über den Konfigurationsparameter PATCH1=131072 in den CLI/ODBC Einstellungen (Datei DB2CLI.INI) bis DB2 V7.x eine Hilfe dazu angeboten. Der Timestamp wird dabei in ein CHAR(26) Attribut konvertiert. Abfragen und UPDATE’s waren dadurch möglich.
Mit DB2 V8.x wurde dieser Patch jedoch entfernt und erst mit FixPak 6 wieder aufgenommen, aber scheinbar nicht sauber implementiert. Derzeit scheint es keine Möglichkeit zu geben, korrekt mit MS Access (Office) und DB2 Timestamps zu arbeiten.  >:(
Weitere Neuigkeiten bei Gelegenheit!
Viele Grüße
GernotPS: Ein Work-around ist auf DB2-Seite möglich, in dem man Timestamps mit  CHAR(26) anlegt und DEFAULT’s ggf. mit einem Trigger befüllt oder Änderungen verfiziert.
10. Februar 2005 um 9:55 Uhr #2968
AnonymInaktivHallo Gernot,
nicht dass ich das von Dir beschriebene Problem hätte, aber wäre es nicht auch möglich eine View anzulegen, welche dann das TIMESTAMP-Format in eine column mit DATE und eine weitere column im TIME-Format aufteilt, bevor man TIMESTAMPS zu 26-stelligen CHAR-Formaten degradiert?
Gruß
Bunbury10. Februar 2005 um 11:01 Uhr #3291
AnonymInaktivHm, es dürfte dann aber problematisch sein, über diese View INSERTs zu machen oder UPDATEs des Timestamp-Feldes …
11. Februar 2005 um 12:27 Uhr #3501
AnonymInaktivHallo,
stimmt natürlich: INSERT und UPDATE gehen nicht!
Wie konnte ich dies nur übersehen!!!
Gruß
Bunbury17. Februar 2005 um 12:41 Uhr #3640
AnonymInaktivHi,
das Problem ist immer noch offen. Zum einen gibt es neue PTF’s für DB2 V6 bis V8, die in diese Richtung zielen und den Timestamp per Stored Proc am Host aufbereiten sollen.
Zum anderen funktioniert aber auch im homogenen Umfeld (beispielweise also MS Access via DB2 Client zu DB2 UDB Server auf Sun/Solaris) die Sache noch nicht: Hier erscheint ein SQL0180N (Timestamp Darstellungsfehler).
Das Problem gibt es also seit DB2 UDB V8.1 LUW und immer noch mit V8.2.
Bald Neues!
Gernot
25. Februar 2005 um 14:02 Uhr #3745
AnonymInaktivHallo,
die Lösung des Problems:
- Auf der Client Seite db2cli.ini ergänzen um …
[eine Database Section]
MapTimestampDescribe=1
MapTimestampCDefault=1 - Auf der DB2 V8.2 LUW Server Seite keine Ergänzungen erforderlich
- Auf der DB2 for z/OS oder OS/390 Seite:
APAR/Fix PQ96188 / UQ96410 einspielen
APAR/Fix PQ83561/ UQ87586 einspielen
Viele Grüße
Gernot RubanPS: Es gab übrigens noch weitere Erscheinungen, wie beispielsweise fehlerhafte INSERT-Versuche auf der DB2 for z/OS-Seite, wenn Minute<10. Oder fehlende Mikrosekunden auf MS Access Seite.
- Auf der Client Seite db2cli.ini ergänzen um …
-
AuthorPosts
You must be logged in to reply to this topic.