Ich habe eine Tabelle mit einer Spalte, die eine in einer SQL Server 2008-Datenbank ist. Die Daten, die eingefügt werden, sind keine Zeitstempel in dem Sinne, dass die Verwendung von NOW beim Einfügen akzeptabel wäre. Das Datum wird ein wenig vor dem Einfügen generiert und ich möchte diesen Wert beibehalten.SQL Server 2008 Datetime-Spalte JDBC-Problem einfügen
Datumsangaben werden als Strings im Format yyyy-mm-dd hh:mm:ss.[fff...]
serialisiert und vor dem Einfügen in ein JDBC-Timestamp-Objekt konvertiert.
Ein Problem, das ich in mit SQL Server ausgeführt habe, ist, dass es den Wert in TIMESTAMP konvertiert, bevor eingeführt und dann mit dieser klagt:
com.microsoft.sqlserver.jdbc.SQLServerException:
Cannot insert an explicit value into a timestamp column.
Use INSERT with a column list to exclude the timestamp column,
or insert a DEFAULT into the timestamp column.
Wie kann ich ohne die Umwandlung in eine DATETIME- Spalte legen Sie einfach ?
Danke.
Sind Sie sicher, dass in der Tabelle keine Spalte vom Typ Timestamp vorhanden ist? Da diese aussehen wie SQL-Server-Fehlermeldungen nicht Zeitstempel nicht Java. - Zeigen Sie uns das Schema – Mark
100%. Die Frage wurde bereits beantwortet. setString ist was Sie wollen, nicht setTimestamp. Ich denke, jeder JDBC-Treiber beschäftigt sich mit Datumzeiten auf verschiedene Arten. – Max