Rumah > pangkalan data > tutorial mysql > Bagaimana Mengendalikan Nilai '0000-00-00 00:00:00' DATETIME dalam JDBC?

Bagaimana Mengendalikan Nilai '0000-00-00 00:00:00' DATETIME dalam JDBC?

Susan Sarandon
Lepaskan: 2024-12-26 01:32:09
asal
986 orang telah melayarinya

How to Handle '0000-00-00 00:00:00' DATETIME Values in JDBC?

Mengendalikan Nilai DATETIME '0000-00-00 00:00:00' dalam JDBC

Yang bermasalah '0000-00-00 00:00:00' DATETIME nilai, yang mewakili keadaan separa nol, sering mencetuskan pengecualian apabila cuba mendapatkan semula ia sebagai rentetan menggunakan ResultSet.getString(). Untuk menyelesaikan masalah ini, pertimbangkan pilihan berikut:

1. Menghantar ke CHAR

Untuk mendapatkan rentetan DATETIME mentah seperti yang dipaparkan dalam pangkalan data, gunakan pertanyaan khusus MySQL:

SELECT CAST(add_date AS CHAR) AS add_date
Salin selepas log masuk

2. Konfigurasi URL JDBC

Sebagai alternatif, anda boleh menambah zeroDateTimeBehavior=convertToNull ke URL JDBC anda:

jdbc:mysql://yourserver:3306/yourdatabase?zeroDateTimeBehavior=convertToNull
Salin selepas log masuk

Ini mengkonfigurasi JDBC untuk menukar '0000-00-00 00:00:00 ' nilai kepada NULL, membolehkan anda mendapatkannya tanpa mencetuskan pengecualian.

3. zeroDateTimeBehavior Configuration Property

Untuk Penyambung/J versi 3.1 dan ke atas, sifat zeroDateTimeBehavior menawarkan lebih banyak penyesuaian. Dengan menetapkannya kepada pengecualian, convertToNull atau bulat, anda boleh menentukan cara nilai DATETIME dikendalikan:

  • exception: Melemparkan pengecualian SQL (lalai)
  • convertToNull: Returns NULL
  • pusingan: Membundarkan tarikh kepada 0001-01-01

Rujuk manual MySQL untuk butiran lanjut tentang sifat konfigurasi ini.

Nota: Dalam MySQL Connector/J 5.1.15, pepijat menjejaskan ciri zeroDateTimeBehavior=convertToNull. Rujuk CHANGELOGS tapak web rasmi untuk mendapatkan kemas kini tentang pembetulan pepijat.

Atas ialah kandungan terperinci Bagaimana Mengendalikan Nilai '0000-00-00 00:00:00' DATETIME dalam JDBC?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan