Heim >Datenbank >MySQL-Tutorial >Wie füge ich mit Java ein „java.util.Date' ordnungsgemäß in eine Datenbank ein?
Java Date – Einfügen in eine Datenbank
Um einen Datensatz mit einem java.util.Date-Feld in eine Datenbank einzufügen, gehen Sie wie folgt vor Sie müssen java.sql.PreparedStatement mit einem java.sql.Date oder verwenden java.sql.Timestamp.
Originalcode und Problem
Das Problem mit Ihrem Originalcode besteht darin, dass Sie versuchen, ein java.util.Date direkt einzufügen die Datenbank als String. Stattdessen sollten Sie java.util.Date in ein java.sql.Date konvertieren und eine vorbereitete Anweisung verwenden, um den Wert einzufügen:
java.util.Date in java.sql.Date
java.util.Date myDate = new java.util.Date("01/01/2009"); java.sql.Date sqlDate = new java.sql.Date(myDate.getTime());
Vorbereitet Anweisung
sb.append("INSERT INTO USERS"); sb.append("(USER_ID, FIRST_NAME, LAST_NAME, SEX, CRDATE) "); sb.append("VALUES ( "); sb.append("?, ?, ?, ?, ?"); sb.append(")"); Connection conn = ...; // get the connection somehow PreparedStatement stmt = conn.prepareStatement(sb.toString()); stmt.setString(1, userId); stmt.setString(2, myUser.GetFirstname()); stmt.setString(3, myUser.GetLastname()); stmt.setString(4, myUser.GetSex()); stmt.setDate(5, sqlDate);
Vorteile
Die Verwendung einer vorbereiteten Anweisung bietet mehrere Vorteile:
Das obige ist der detaillierte Inhalt vonWie füge ich mit Java ein „java.util.Date' ordnungsgemäß in eine Datenbank ein?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!