Heim >Java >javaLernprogramm >Wie verwende ich „setDate()' und „setTimestamp()' in vorbereiteten Anweisungen richtig?

Wie verwende ich „setDate()' und „setTimestamp()' in vorbereiteten Anweisungen richtig?

DDD
DDDOriginal
2024-12-04 11:23:111080Durchsuche

How to Correctly Use `setDate()` and `setTimestamp()` in Prepared Statements?

setDate in PreparedStatement verwenden

Um Codierungsstandards einzuhalten, besteht Ihre Aufgabe darin, Ihren Code zu aktualisieren, um vorbereitete Anweisungen zu verwenden und Variablen zu binden anstatt SQL-Variablen fest zu codieren. Es ist jedoch ein Problem mit der Methode setDate() aufgetreten.

Um dieses Problem zu beheben, sollten die folgenden Richtlinien befolgt werden:

Verwenden von java.sql.Date

Wenn Ihr Tisch ein DATUM hat Spalte:

  • java.lang.String:
    Verwenden Sie die Methode java.sql.Date.valueOf(java.lang.String) und stellen Sie eine Zeichenfolge im „ jjjj-[m]m-[t]d" format.
  • java.util.Date:
    Wenn Sie eine java.util.Date-Variable endDate haben, konvertieren Sie sie mit ps.setDate(2, new java.sql.Date (endDate.getTime()));.
  • Aktuell:
    Bis Geben Sie das aktuelle Datum ein und verwenden Sie ps.setDate(2, new java.sql.Date(System.currentTimeMillis())); oder ps.setDate(2, java.sql.Date.valueOf(java.time.LocalDate.now())); (Java 8 und höher).

Verwenden von java.sql.Timestamp

Für TIMESTAMP- oder DATETIME-Spalten:

  • java.lang.String:
    Verwendung die Methode java.sql.Timestamp.valueOf(java.lang.String) mit Zeitstempeln im Format „yyyy-[m]m-[d]d hh:mm:ss[.f...]“.
  • java.util.Date:
    Konvertieren Sie java.util.Date-Variablen mit ps.setTimestamp(2, new java.sql.Timestamp(endDate.getTime()));.
  • Current:
    Erhalten Sie den aktuellen Zeitstempel mit ps.setTimestamp(2, new java.sql.Timestamp( System.currentTimeMillis())); oder ps.setTimestamp(2, java.sql.Timestamp.valueOf(java.time.LocalDateTime.now())); (Java 8 und höher).

Das obige ist der detaillierte Inhalt vonWie verwende ich „setDate()' und „setTimestamp()' in vorbereiteten Anweisungen richtig?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn