ऐसा लगता है कि एन्कोडिंग सर्वर से क्लाइंट के लिए अलग है। आप इन आदेशों को जारी करते हुए इसे सत्यापित कर सकते हैं:
SHOW client_encoding; --Equivalent to: SELECT current_setting('client_encoding');
SHOW server_encoding; --Equivalent to: SELECT current_setting('server_encoding');
PostgreSQL स्वचालित रूप से क्लाइंट एन्कोडिंग में कनवर्ट करता है। शायद आपके परिवेश में दोनों अलग हैं। आप client_encoding को कॉन्फ़िगर कर सकते हैं कई तरह से:
SETका उपयोग करना कमांड जब आप ऐप में कनेक्शन खोलें:SET client_encoding = 'UTF-8';set_configका उपयोग करना आपके ऐप में खुला कनेक्शन होने पर कार्य करें:SELECT set_config('client_encoding', 'UTF-8', true);- कॉन्फ़िगर करें
PGCLIENTENCODINGआपके ओएस में पर्यावरण संस्करण:export PGCLIENTENCODING=UTF8 - संपादित करें
client_encodingपोस्टग्रेज कॉन्फिग फाइल में ALTER SYSTEMका उपयोग करें (इसके बाद आपकोSELECT pg_reload_conf();. के साथ कॉन्फिगर को रिफ्रेश करना होगा ):ALTER SYSTEM SET client_encoding = 'UTF-8';
अपडेट करें: दुर्भाग्य से SQL_ASCII से स्वचालित रूपांतरण सक्षम करना संभव नहीं है।
डॉक्यूमेंटेशन पोस्ट करें से कोट ।