Ralat JDBC: Mengendalikan Cap Masa Tidak Boleh Diwakili
Dalam aplikasi Java, anda mungkin menghadapi mesej ralat "...'0000-00- 00 00:00:00' tidak boleh diwakili sebagai java.sql.Timestamp" apabila menanyakan jadual pangkalan data MySQL yang mengandungi nilai cap masa. Ini berlaku apabila jadual mempunyai nilai cap masa lalai '0000-00-00 00:00:00', yang mewakili tarikh yang tidak sah mengikut kelas Cap Waktu Java.
JDBC Solution : Mengkonfigurasi Kelakuan Tarikh Sifar
Untuk menyelesaikan isu ini tanpa mengubah suai struktur jadual pangkalan data, anda boleh mengkonfigurasi sambungan JDBC untuk mengendalikan nilai masa sifar sebagai nol. Ini boleh dicapai dengan menambahkan parameter berikut pada URL JDBC:
zeroDateTimeBehavior=convertToNull
URL JDBC yang diubah suai akan kelihatan seperti ini:
jdbc:mysql://yourserver:3306/yourdatabase?zeroDateTimeBehavior=convertToNull
Dengan menambahkan parameter ini, apabila pangkalan data kembali nilai cap waktu '0000-00-00 00:00:00', pemacu JDBC akan menukarnya secara automatik kepada nilai nol dalam ResultSet. Ini menghapuskan ralat dan membolehkan anda memproses ResultSet tanpa sebarang masalah.
Atas ialah kandungan terperinci Bagaimana Mengendalikan \'0000-00-00 00:00:00\' Ralat Cap Masa dalam JDBC?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!