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

MySQL में, CHAR () फ़ंक्शन अजीब काम करता है

MySQL 8.0.19 से पहले, आप जिस समस्या का सामना कर रहे हैं वह मौजूद नहीं थी। binary-as-hex क्लाइंट विकल्प डिफ़ॉल्ट रूप से MySQL 8.0.19 से सक्षम है।

status चलाएं या \s MySQL में। आप बाइनरी डेटा के बारे में एक लाइन देखेंगे। यदि इसका उल्लेख हेक्साडेसिमल के रूप में किया गया है, तो CHAR() . जैसे कार्यों के आउटपुट और UNHEX() सामान्य टेक्स्ट के बजाय हेक्साडेसिमल के रूप में प्रदर्शित होगा।

इससे बचने के लिए आप CHAR() . के USING charset क्लॉज का इस्तेमाल कर सकते हैं ।

mysql> SELECT CHAR(97);
+--------------------+
| CHAR(97)           |
+--------------------+
| 0x61               |
+--------------------+
1 row in set (0.00 sec)

mysql> SELECT CHAR(97 USING utf8mb4);
+------------------------+
| CHAR(97 USING utf8mb4) |
+------------------------+
| a                      |
+------------------------+
1 row in set (0.00 sec)

या, आप --skip-binary-as-hex . का उपयोग कर सकते हैं . विंडोज़ में अनुसरण करने के चरण हैं:

  1. ओपन कमांड प्रॉम्प्ट।

  2. निर्देशिका बदलें। मेरे मामले में आदेश था:

    cd "C:\Program Files\MySQL\MySQL Server 8.0\bin"
    
  3. भागो

    mysql -u root -p --skip-binary-as-hex
    
  4. पासवर्ड दर्ज करें।

  5. अब, CHAR() . के आउटपुट समारोह वैसा ही होगा जैसा आप उम्मीद करते हैं।

नोट :--skip-binary-as-hex विधि तब तक काम करती है जब तक आप MySQL से बाहर नहीं निकल जाते। आपको --skip-binary-as-hex . का उपयोग करने की आवश्यकता है विधि हर बार जब आप MySQL खोलते हैं तो हेक्साडेसिमल मान नहीं दिखाए जाएंगे।

अधिक जानकारी के लिए आप इन लिंक्स को देख सकते हैं:



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. एक ही तालिका में दो अभिलेखों के बीच दिनांक अंतर

  2. MySQL संग्रहीत कार्य - गतिशील/परिवर्तनीय तालिका और स्तंभ नाम

  3. MySQL लाइन 1 त्रुटि पर '' के पास '' का उपयोग करने के लिए सही सिंटैक्स है

  4. यदि MySQL में एक इंडेक्स बनाने या छोड़ने के लिए मौजूद है तो मैं कैसे काम कर सकता हूं?

  5. नवीनतम JDK अपडेट के बाद Java MySQL 5.7 से कनेक्ट क्यों नहीं हो सकता है और इसे कैसे ठीक किया जाना चाहिए? (ssl.SSLHandshakeException:कोई उपयुक्त प्रोटोकॉल नहीं)