java.sql.Timestamp zu String mit Mikrosekunden-Präzision

Lese ich eine timestamp-Spalte aus der Datenbank in eine java.sql.Timestamp-Objekt. Dann würde ich das gerne konvertieren, wird der Wert des timestamp in ein String-Objekt, aber behalten Sie im Mikrosekunden-Genauigkeit. Aufruf von toString () - Methode ruft Sie mich schließen, aber es scheint zu verlieren, nachfolgende Nullen in der Mikrosekunde. Wenn der timestamp endet in einer Zahl ungleich null, ist alles in Ordnung.

Beispiel:

SimpleDateFormat outDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSSSSS");
String s = "2005-02-25 11:50:11.579410";
java.sql.Timestamp ts = java.sql.Timestamp.valueOf(s);
String out = ts.toString(); //This returns 2005-02-25 11:50:11.57941
out = outDateFormat.format(ts); //This returns 2005-02-25 11:50:11.000579

Ich bin wirklich auf der Suche, um print-2005-02-25 11:50:11.579410.

S ist eine Millisekunde und nicht eine Mikrosekunde...
Vereinbart. Ich habe in dem Beispiel nur um zu zeigen, wie es sich verhält.
Warum brauchen Sie Mikrosekunde Genauigkeit?
Ich bin die Replikation von Daten zwischen verschiedenen Datenbank-Systemen-und timestamp-Präzision erhalten werden muss.

InformationsquelleAutor Mensur | 2013-12-23

Schreibe einen Kommentar