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

डेटाबेस में वगैरह जैसे सिंबल होते हैं, क्या करें?

यह इस बात पर निर्भर करता है कि वास्तव में समस्या क्या है...

यदि ऐसा है कि वे वर्ण माना हैं वहां रहने के लिए (जैसे स्पेनिश में "माना") तो आपको यह सुनिश्चित करना होगा कि सब कुछ यूटीएफ -8 में है ... सबसे अच्छा तरीका यह है:

1:जांचें कि डेटाबेस टेबल "utf-8" एन्कोडिंग में हैं (यदि उन्हें utf-8 में परिवर्तित नहीं किया गया है)

2:जैसा कि मार्टिन ने उल्लेख किया है, सुनिश्चित करें कि डेटाबेस कनेक्टर utf-8 कुछ इस तरह का उपयोग कर रहा है:

mysql_set_charset('utf8'); //note that MySQL uses no hyphen here

3:सुनिश्चित करें कि दस्तावेज़ utf-8 है (आप शीर्ष पर एक शीर्षलेख जोड़ सकते हैं)

<?php header('Content-type:text/html;charset=utf-8'); ?>

4:सुरक्षित रहने के लिए, इसे मेटा टैग के रूप में भी जोड़ें

<meta http-equiv="content-type" content="text/html;charset=utf-8" />

हालांकि

यह बहुत संभव है कि आपके पास डेटाबेस में कुछ डफ वर्ण हैं जहां आईएसओ -885 9 -1 जैसे कुछ को यूटीएफ -8 में बुरी तरह से जोड़ दिया गया है। इस मामले में आपको £ . जैसी चीज़ें दिखाई देंगी जहां आप वास्तव में चाहते हैं वह £ . है (क्योंकि UTF-8 वर्णों में ISO-8859-1 वर्णों की तुलना में अधिक डेटा होता है, यदि आप सावधान नहीं हैं तो अतिरिक्त डेटा एक अतिरिक्त वर्ण बन सकता है)।

इस मामले में आपका सबसे अच्छा दांव डेटाबेस को साफ करना है (आप शायद कुछ ऐसा कर सकते हैं जैसे UPDATE table SET field = REPLACE(field, '£', '£') सामान्य "त्रुटियों" के लिए) और फिर बार-बार होने वाली समस्या से बचने के लिए पूरे कबूडल को UTF-8 (जैसा कि ऊपर बताया गया है) में बदल दें।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL अवरोही क्रम से सीमा

  2. MySQL में पूर्णांक के लिए खाली स्ट्रिंग की अनुमति कैसे दें?

  3. MySQL डेटाबेस में उपयोगकर्ता नाम और पासवर्ड संग्रहीत करने के लिए सर्वोत्तम अभ्यास

  4. पायथन + MySQL - बल्क इंसर्ट

  5. क्या मैं डिफ़ॉल्ट पेजिनेशन को ओवरराइड किए बिना कस्टम क्वेरी को पेजिनेट कर सकता हूं?