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

Oracle NLS_DATE_FORMAT tidak berfungsi dengan benar

Jika Anda melakukannya:

alter session set nls_date_format='DD DDTH MON YYYY';

Anda mendapatkan kesalahan, ORA-01810: format code appears twice .

Jika Anda menggunakan model format yang sama dengan TO_CHAR maka berhasil:

alter session set nls_date_format='DY DDTH MON YYYY';

Session altered.

select SYSDATE from dual;

SYSDATE
-----------------
FRI 23RD AUG 2013

Ini berfungsi di Pengembang SQL dan SQL*Plus.

Untuk pertanyaan Anda yang diperbarui tentang penyisipan, dokumentasi format tanggal waktu mengatakan:

Jadi Anda tidak dapat menggunakan string dengan akhiran sebagai bagian dari sisipan Anda, baik secara eksplisit atau melalui NLS_DATE_FORMAT . Anda harus menghapusnya dari string atau menyesuaikan model format yang akan diperlakukan sebagai nilai tetap.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Berapa ukuran maksimal VARCHAR2 di PL/SQL dan SQL?

  2. Prosedur Tersimpan Oracle dan tipe data khusus

  3. ORA-00927:tanda sama dengan hilang

  4. Bagaimana cara menggunakan Oracle ORDER BY dan ROWNUM dengan benar?

  5. SQL tidak menampilkan nilai nol pada kueri yang tidak sama?