PostgreSQL
 sql >> डेटाबेस >  >> RDS >> PostgreSQL

रेल 3, हरोकू:नल सर्वर त्रुटि:PGError:त्रुटि:UTF8 एन्कोडिंग के लिए अमान्य बाइट अनुक्रम:0xba

संख्या चिह्न , º , ISO-8869-1 में 0xBA है यूटीएफ -8 नहीं। तो आपकी सीएसवी फ़ाइल लैटिन -1 के साथ एन्कोड की गई है लेकिन आप एन्कोडिंग को ठीक किए बिना इसे अपने डेटाबेस में यूटीएफ -8 के रूप में संग्रहीत करने का प्रयास कर रहे हैं।

आप अपनी सीएसवी लाइब्रेरी को यह बताने का प्रयास कर सकते हैं कि यह लैटिन -1 एन्कोडेड टेक्स्ट से निपट रहा है और शायद यह यूटीएफ -8 में कनवर्ट करने का ख्याल रखेगा। यदि वह काम नहीं करता है, तो आप इसे आइकनव :

ruby-1.9.2 > Iconv.iconv('UTF-8', 'ISO-8859-1', "\xba")
 => ["º"]
ruby-1.9.2 > Iconv.iconv('UTF-8', 'ISO-8859-1', "\xb0")
 => ["°"]

आपको SQLite से परेशानी नहीं हो रही है क्योंकि SQLite बहुत क्षमाशील होता है और इसमें बहुत ढीली प्रकार की प्रणाली होती है। यदि आप इसे अमान्य डेटा खिलाने का प्रयास करते हैं, तो PostgreSQL, OTOH, बल्कि सख्त हो जाता है और ठीक से शिकायत करता है। मैं अनुशंसा करता हूं कि यदि आप हेरोकू और पोस्टग्रेएसक्यूएल पर तैनात होने जा रहे हैं तो आप SQLite के शीर्ष पर विकास करना बंद कर दें, ऐसे अन्य अंतर हैं जो समस्याएं पैदा करेंगे (उदाहरण के लिए ग्रुप बाय और लाइक का व्यवहार)।




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. PostgreSQL में सेकंड में टाइमस्टैम्प के बीच अंतर खोजें

  2. पोस्टग्रेज में संकुल सूचकांक के बारे में

  3. त्रुटि:उपयोगकर्ता के लिए पहचान प्रमाणीकरण विफल रहा

  4. विशिष्ट क्रम में एकाधिक मानों द्वारा एसक्यूएल ऑर्डर?

  5. PostgreSQL में डुप्लिकेट अपडेट पर डालें?