PostgreSQL
 sql >> Teknologi Basis Data >  >> RDS >> PostgreSQL

urutan byte tidak valid untuk pengkodean UTF8

Jika Anda perlu menyimpan data UTF8 di database Anda, Anda memerlukan database yang menerima UTF8. Anda dapat memeriksa penyandian database Anda di pgAdmin. Cukup klik kanan database, dan pilih "Properties".

Tetapi kesalahan itu sepertinya memberi tahu Anda bahwa ada beberapa data UTF8 yang tidak valid di file sumber Anda. Artinya copy utilitas telah mendeteksi atau menduga bahwa Anda memberinya file UTF8.

Jika Anda menjalankan beberapa varian Unix, Anda dapat memeriksa penyandian (kurang lebih) dengan file utilitas.

$ file yourfilename
yourfilename: UTF-8 Unicode English text

(Saya pikir itu akan bekerja pada Mac di terminal juga.) Tidak yakin bagaimana melakukannya di bawah Windows.

Jika Anda menggunakan utilitas yang sama pada file yang berasal dari sistem Windows (yaitu, file yang bukan dikodekan dalam UTF8), itu mungkin akan menampilkan sesuatu seperti ini:

$ file yourfilename
yourfilename: ASCII text, with CRLF line terminators

Jika keadaan tetap aneh, Anda dapat mencoba mengonversi data input Anda ke penyandian yang diketahui, untuk mengubah penyandian klien Anda, atau keduanya. (Kami benar-benar memperluas batas pengetahuan saya tentang penyandian.)

Anda dapat menggunakan iconv utilitas untuk mengubah penyandian data input.

iconv -f original_charset -t utf-8 originalfile > newfile

Anda dapat mengubah penyandian psql (klien) dengan mengikuti petunjuk pada Dukungan Kumpulan Karakter. Di halaman tersebut, cari frasa "Untuk mengaktifkan konversi kumpulan karakter otomatis".



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SEPERTI permintaan pada elemen array jsonb datar

  2. Pilih catatan pertama jika tidak ada yang cocok

  3. Mengelola Ketersediaan Tinggi di PostgreSQL – Bagian II:Manajer Replikasi

  4. PostgreSQL JDBC Null String diambil sebagai byte

  5. Kurangi Minggu dari Tanggal di PostgreSQL