Pengguna anonim
Lebih
ORA-01861: literal tidak cocok dengan string format
Ketika saya mencoba mengeksekusi cuplikan ini:
cmd.CommandText = "SELECT alarm_id,definition_description,element_id,
TO_CHAR (alarm_datetime, 'YYYY-MM-DD HH24:MI:SS'),severity,
problem_text,status FROM aircom.alarms
WHERE status = 1 and
TO_DATE (alarm_datetime,'DD.MM.YYYY HH24:MI:SS') > TO_DATE ('07.09.2008
09:43:00', 'DD.MM.YYYY HH24:MI:SS')
order
by ALARM_DATETIME desc";
Saya mendapatkan:
ORA-01861: literal does not match format string
Tidak ada masalah dengan koneksi database karena saya dapat menjalankan perintah SQL dasar.
Apa masalahnya dengan pernyataan ini?
34
3
Hapus TO_DATE dalam klausa WHERE
dan ubah kodenya menjadi
Kesalahan berasal dari konversi to_date dari kolom tanggal.
Penjelasan Tambahan: Oracle mengubah alarm_datetime Anda menjadi string menggunakan format tanggal yang bergantung pada nls. Setelah itu, Oracle memanggil to_date dengan mask tanggal yang Anda berikan. Ini melempar pengecualian.
Error berarti Anda mencoba memasukkan literal dengan string format, tetapi panjang string format tidak sama panjangnya dengan literal.
Salah satu format ini salah: