Oracle
 sql >> Teknologi Basis Data >  >> RDS >> Oracle

Mendapatkan Kesalahan - ORA-01858:karakter non-numerik ditemukan di tempat yang diharapkan berupa numerik

Kesalahan yang Anda dapatkan adalah karena Anda melakukan TO_DATE pada kolom yang sudah berisi tanggal, dan Anda menggunakan format mask yang berbeda dengan nls_date_format Anda parameter[1] atau karena kolom event_occurrence berisi data yang bukan angka.

Anda perlu a) mengoreksi kueri Anda sehingga tidak menggunakan TO_DATE pada kolom tanggal, dan b) mengoreksi data Anda, jika event_occurrence seharusnya hanya berupa angka.

Dan perbaiki tipe data kolom tersebut untuk memastikan Anda hanya dapat menyimpan angka.



[1] Apa yang dilakukan Oracle saat Anda melakukannya:TO_DATE(date_column, non_default_format_mask) adalah:TO_DATE(TO_CHAR(date_column, nls_date_format), non_default_format_mask)

Umumnya, nls_date_format default parameter diatur ke dd-MON-yy , jadi dalam kueri Anda, yang mungkin terjadi adalah kolom tanggal Anda diubah menjadi string dalam format dd-MON-yy, dan Anda kemudian mengembalikannya ke tanggal menggunakan format MMDD. String tidak dalam format ini, jadi Anda mendapatkan kesalahan.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. tabel pivot Oracle - cara mengubah item baris menjadi kolom

  2. Cara terbaik untuk menjalankan kueri Oracle secara berkala

  3. Periksa Batasan Memanggil Fungsi Oracle SQL developer

  4. Di WiX bagaimana cara menguji keberadaan kunci registri (bukan nilai) untuk Oracle ODP.Net?

  5. WSJDBCConnection tidak membungkus objek bertipe Oracle jdbc Connection