utf8_bin
प्रत्येक वर्ण के बाइनरी मान द्वारा, केस सेंसिटिव मोड में स्ट्रिंग्स की तुलना करने के लिए संयोजन का उपयोग किया जाता है। यह आपके डेटाबेस की आपकी स्थानीय सेटिंग्स पर निर्भर हो सकता है कि किस वर्णसेट या संयोजन का उपयोग किया जाता है। उदाहरण के लिए एक MySQL डेटाबेस के लिए, आप निम्न MySQL कमांड द्वारा अपने MySQL डेटाबेस के कोलेशन मोड की जांच कर सकते हैं
mysql> SELECT COLLATION(VERSION());
+----------------------+
| COLLATION(VERSION()) |
+----------------------+
| utf8_general_ci |
+----------------------+
..या इसका उपयोग करके..
mysql> show variables like '%collation%';
+----------------------+-------------------+
| Variable_name | Value |
+----------------------+-------------------+
| collation_connection | utf8_general_ci |
| collation_database | latin1_swedish_ci |
| collation_server | latin1_swedish_ci |
+----------------------+-------------------+
आपके मामले में इनमें से एक मान utf8_bin
. होना चाहिए . डेटाबेस के लिए सामान्य मान आपकी कॉन्फ़िगरेशन फ़ाइल में सेट किए जा सकते हैं, शायद my.cnf
MySQL के लिए। एक विशिष्ट इंजन, चारसेट या संयोजन के साथ एक MySQL तालिका बनाने के लिए आप माइग्रेशन विकल्पों का उपयोग कर सकते हैं:
create_table :users,
:options => 'ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_general_ci'
...
दस्तावेज़ीकरण के अनुसार, टेबल कैरेक्टर सेट और कोलेशन ए> MySQL एक्सटेंशन हैं, मानक SQL में ऐसी कोई चीज़ नहीं है।