JDBC-Fehler: Behandlung nicht darstellbarer Zeitstempel
In einer Java-Anwendung kann die Fehlermeldung „...'0000-00-“ auftreten. 00 00:00:00' kann nicht als java.sql.Timestamp" dargestellt werden, wenn eine MySQL-Datenbanktabelle abgefragt wird, die Zeitstempelwerte enthält. Dies tritt auf, wenn die Tabelle einen Standardzeitstempelwert von „0000-00-00 00:00:00“ hat, der ein Datum darstellt, das gemäß der Java-Zeitstempelklasse ungültig ist.
JDBC-Lösung : Nulldatumsverhalten konfigurieren
Um dieses Problem zu beheben, ohne die Struktur der Datenbanktabelle zu ändern, können Sie die JDBC-Verbindung so konfigurieren, dass Nullzeitwerte als Null behandelt werden. Dies kann durch Hinzufügen des folgenden Parameters zur JDBC-URL erreicht werden:
zeroDateTimeBehavior=convertToNull
Die geänderte JDBC-URL würde wie folgt aussehen:
jdbc:mysql://yourserver:3306/yourdatabase?zeroDateTimeBehavior=convertToNull
Durch Hinzufügen dieses Parameters, wann immer die Datenbank zurückkehrt Wenn Sie einen Zeitstempelwert von „0000-00-00 00:00:00“ angeben, konvertiert der JDBC-Treiber ihn automatisch in einen Nullwert im ResultSet. Dadurch wird der Fehler behoben und Sie können das ResultSet problemlos verarbeiten.
Das obige ist der detaillierte Inhalt vonWie gehe ich mit Zeitstempelfehlern vom Typ „0000-00-00 00:00:00' in JDBC um?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!