Veritabanınızda UTF8 verilerini depolamanız gerekiyorsa, UTF8'i kabul eden bir veritabanına ihtiyacınız vardır. Veritabanınızın kodlamasını pgAdmin'de kontrol edebilirsiniz. Veritabanına sağ tıklayın ve "Özellikler" i seçin.
Ancak bu hata, kaynak dosyanızda bazı geçersiz UTF8 verileri olduğunu söylüyor gibi görünüyor. Bu şu demektircopy yardımcı programın onu bir UTF8 dosyasıyla beslediğinizi algıladığı veya tahmin ettiği .
Unix'in bir varyantı altında çalışıyorsanız, kodlamayı (aşağı yukarı) fileyardımcı programla kontrol edebilirsiniz.
$ file yourfilename
yourfilename: UTF-8 Unicode English text
(Bunun terminaldeki Mac'lerde de çalışacağını düşünüyorum.) Bunu Windows altında nasıl yapacağımı bilmiyorum.
Eğer (olduğunu, oluyor bir dosya, Windows sistemlerinden gelen bir dosya üzerinde aynı programı kullanırsanız değil UTF8 olarak kodlanmış), muhtemelen böyle bir şey gösterecektir:
$ file yourfilename
yourfilename: ASCII text, with CRLF line terminators
İşler tuhaf kalırsa, giriş verilerinizi bilinen bir kodlamaya dönüştürmeyi, istemcinizin kodlamasını değiştirmeyi veya her ikisini de deneyebilirsiniz. (Kodlamalar hakkındaki bilgimin sınırlarını gerçekten genişletiyoruz.)
iconvYardımcı programı, giriş verilerinin kodlamasını değiştirmek için kullanabilirsiniz .
iconv -f original_charset -t utf-8 originalfile > newfile
Karakter Seti Desteği'ndeki talimatları izleyerek psql (istemci) kodlamasını değiştirebilirsiniz . Bu sayfada, "Otomatik karakter seti dönüştürmeyi etkinleştirmek için" ifadesini arayın.