Encoding server Anda tampaknya adalah UTF8.
Saya menduga client_encoding
Anda tidak cocok, yang mungkin memberi Anda kesan yang salah tentang apa yang Anda hadapi. Periksa dengan:
SHOW client_encoding; -- in your actual session
Dan baca jawaban terkait ini:
Tidak dapat menyisipkan karakter Jerman di Postgres
Ganti karakter unicode di PostgreSQL
Rantai alat lainnya juga harus sinkron. Saat menggunakan puTTY, misalnya, kita harus memastikan, terminal setuju dengan yang lainnya:Change settings... Window -> Translation -> Remote character set
=UTF-8
.
Adapun pertanyaan pertama Anda, Anda sudah memiliki solusi terbaik. Beberapa umlaut sebaiknya diganti dengan string replace()
pernyataan.
Seperti yang sepertinya sudah Anda ketahui, penggantian karakter tunggal lebih efisien dengan (satu) translate()
pernyataan.
Terkait:
- Ganti karakter unicode di PostgreSQL
- Regex menghapus semua kemunculan beberapa karakter dalam sebuah string