-
Insert auf SQL-Server datetime - Zeit stimmt nicht
Hallo!
Ich ermittele per RPG-SQL Daten aus einer AS400 Datei und schreibe sie in eine Tabelle auf einem MS SQL-Server.
Funktioniert ansich problemlos, jedoch die Zeit in meinen Zeitfeld (am SQL-Server)vom Typ datetime stimmt nicht.
So schriebe ich die Daten auf den SQL-Server:
Code:
stmt = JDBC_PrepStmt(conn : 'Insert Into '+%trim(inserttab)+ ' ' +
'([Feld1], [Feld2], [Datum], [Zeit])'
+ ' values (?,?,?,?)' );
if (stmt = *NULL);
ErrMsg = 'Prepare Statement failed!';
return *OFF;
endif;
//Werte zuweisen
JDBC_setString (stmt: 1: sq#Feld1 );
JDBC_setString (stmt: 2: sq#Feld2 );
JDBC_setDate (stmt: 3: sq#Datum );
JDBC_setTime (stmt: 4: sq#Zeit );
Wenn ich mir hier im Debugger den Inhalt von Zeit anschaue sehe ich z.b. 07:00:00
Am SQL-Server steht dann aber in dem Datensatz 06:00:00. (mit Datum da datetime).
Hat jemand eine Idee woran das liegen könnte?
Ich greife die Zeit niergends an, die Systemzeit am Server ist auch ok?
Bin für jeden Tip dankbar!
lg
-
Hallo Hatl,
schau Dir mal Deine System Werte QTIMZONE und QUTCOFFSET
an. Ich kenne so ein Phänomen z.B. in Mail Clients wenn Mail
von der iSeries gesendet werden. Aktuell sollten die so aussehen.
Systemwert . . . . . . : QUTCOFFSET
Beschreibung . . . . . : Abweichung von der Weltzeit
Abweichung . . . . . . : +02:00 -24:00 bis +24:00
Systemwert . . . . . . : QTIMZON
Beschreibung . . . . . : Zeitzone
Zeitzone . . . . . . . : QP0100CET2 Name
Zugeordnete Einstellungen:
Abweichung . . . : +02:00
Voller Name . . : Central European Daylight Saving Time
Kurzname . . . . : CEST
Gruß R
-
Vielen Dank!
Die Systemwerte sind ok, schauen genau so aus.
Hmm ich werde weitersuchen.
lg
-
Ich habe jetzt endlich eine Lösung gefunden.
Es funktioniert, wenn man in eine Variable (19 alpha) die Zeit in der Form eines datetime - Feldes schriebt.
z.b. '01.01.1900 12:10:00'
Das kann dann als String (nicht time oder date) in ein datetime - Feld am SQL-Server eingetragen werden und die Zeit stimmmt.
lg
-
Der SQL-Server scheint da die UTC-Zeit zu verwenden. Kann auch eine Treiber-Einstellung sein, dass bei Datum/Zeit die Timezone beim Schreiben/Lesen verrechnet wird.
Bei einem Timestamp scheint das wiederum nicht zu gelten.
Similar Threads
-
By Wandrey in forum NEWSboard Programmierung
Antworten: 21
Letzter Beitrag: 16-05-08, 13:08
-
By DEVJO in forum IBM i Hauptforum
Antworten: 7
Letzter Beitrag: 12-10-06, 18:28
-
By FNeurieser in forum NEWSboard Programmierung
Antworten: 3
Letzter Beitrag: 11-10-06, 14:53
-
By linguin in forum IBM i Hauptforum
Antworten: 1
Letzter Beitrag: 07-01-06, 15:46
-
By reraru in forum NEWSboard Programmierung
Antworten: 13
Letzter Beitrag: 20-04-05, 13:07
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