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

Oracle menyiapkan NLS_LANG default

Inilah yang mungkin terjadi:

  • Set karakter klien Anda harus seperti CP1252 atau ISO-8859-15 padahal sebenarnya klien Anda benar-benar menggunakan UTF8.
  • Dalam rangkaian karakter ini (UTF8), simbol á membutuhkan dua byte, jadi klien Anda mengirim dua byte ini, sambil memberi tahu Oracle untuk memperlakukannya sebagai CP1252. Dalam CP1252 dua byte kode untuk dua karakter yang mengakibatkan DB menafsirkan input sebagai dua karakter, oleh karena itu length('à') sama dengan 2 (dan jika Anda memasukkan string ini, hasil penyisipan tidak sama dengan à )
  • Bila Anda menyetel set karakter dengan benar, input diperlakukan dengan benar oleh Oracle sebagai satu karakter, dan panjangnya adalah 1 (masih dua byte).

Kesimpulan:atur set karakter klien Anda dengan benar atau Anda akan mendapatkan kesalahan terjemahan (Anda tidak akan mendapatkan karakter ilegal dengan cara ini tetapi Anda mungkin mendapatkan simbol aneh (¿ ).

Kumpulan karakter basis data diatur pada saat pembuatan dan umumnya diubah melalui ekspor/buat basis data kosong/impor.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. .Net - Membuat recordset Sesuai Permintaan daripada menarik semuanya ke dalam memori sekaligus

  2. Bagaimana cara menutup paksa koneksi dari kumpulan koneksi ketika terlalu banyak waktu untuk menutup?

  3. Cari string yang diberikan di semua bidang dari seluruh skema untuk Oracle

  4. Mengurangi Jumlah Hari dari Tanggal di PL/SQL

  5. Apa tujuan dari opsi logging/nologging di Oracle?