Rumah >Java >javaTutorial >Bagaimana Menggunakan setDate dengan Betul dalam PreparedStatement untuk Jenis Data Tarikh dan Cap Masa Berbeza?

Bagaimana Menggunakan setDate dengan Betul dalam PreparedStatement untuk Jenis Data Tarikh dan Cap Masa Berbeza?

Barbara Streisand
Barbara Streisandasal
2024-12-09 00:10:12878semak imbas

How to Properly Use setDate in PreparedStatement for Different Date and Timestamp Data Types?

Menggunakan setDate dalam PreparedStatement

Dalam kod yang anda berikan, anda ingin memasukkan nilai tarikh ke dalam jadual SQL menggunakan PreparedStatement . Apabila menggunakan setDate(), adalah penting untuk memahami format nilai tarikh yang perlu dihantar.

Menggunakan java.sql.Date

Untuk lajur taip DATE, anda mempunyai beberapa pilihan apabila menetapkan nilai menggunakan java.sql.Date:

  • java.lang.String: Rentetan yang mewakili tarikh mestilah dalam format "yyyy-MM-dd."
  • java.util.Date: Tukar java.util.Date kepada java.sql.Date menggunakan baharu java.sql.Date(endDate.getTime()).
  • Cap masa semasa: Gunakan java.sql.Date(System.currentTimeMillis()) untuk menetapkan tarikh semasa.

Menggunakan java.sql.Timestamp

Untuk lajur jenis TIMESTAMP atau DATETIME, gunakan java.sql.Timestamp:

  • java.lang.String : Rentetan yang mewakili cap masa mestilah dalam format "yyyy-MM-dd HH:mm:ss[.f...]."
  • java.util.Date: Tukar java.util.Date kepada java.sql.Timestamp menggunakan java baharu. sql.Timestamp(endDate.getTime()).
  • Cap masa semasa: Gunakan baharu java.sql.Timestamp(System.currentTimeMillis()) untuk menetapkan cap masa semasa.

Dalam kes anda, pastikan rentetan vDateMDY berada dalam format yang betul, "yyyy-MM-dd HH: mm:ss." Jika tidak, anda perlu menggunakan format yang sesuai untuk jenis data lajur SQL anda atau pertimbangkan untuk menggunakan setString() dan penukaran to_date() dalam pernyataan SQL itu sendiri.

Atas ialah kandungan terperinci Bagaimana Menggunakan setDate dengan Betul dalam PreparedStatement untuk Jenis Data Tarikh dan Cap Masa Berbeza?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn