Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> MySQL

क्या MySQL BIT_LENGTH() फंक्शन मल्टी-बाइट सुरक्षित है?


LENGTH() फंक्शन की तरह, MySQL BIT_LENGTH() फंक्शन मल्टी-बाइट सुरक्षित फंक्शन नहीं है। जैसा कि हम जानते हैं कि मल्टी-बाइट सुरक्षित फंक्शन्स जैसे CHAR_LENGTH() या CHARACTER_LENGTH(), और BIT_LENGTH() फंक्शन के बीच परिणाम का अंतर विशेष रूप से यूनिकोड के लिए प्रासंगिक है, जिसमें अधिकांश वर्ण दो बाइट्स में एन्कोडेड होते हैं या UTF-8 के लिए प्रासंगिक है जहां बाइट्स की संख्या भिन्न होती है। यह नीचे दिए उदाहरण में प्रदर्शित है:

उदाहरण

mysql> Select BIT_LENGTH('tutorialspoint');
+------------------------------+
| BIT_LENGTH('tutorialspoint') |
+------------------------------+
| 112                          |
+------------------------------+
1 row in set (0.00 sec)

उपरोक्त परिणाम सेट दर्शाता है कि स्ट्रिंग 'tutorialspoint' की बिट लंबाई 112 है क्योंकि यह अभी तक यूनिकोड वर्ण में परिवर्तित नहीं हुई है। निम्न क्वेरी इसे यूनिकोड वर्ण में परिवर्तित करती है:

mysql> SET @A = CONVERT('tutorialspoint' USING ucs2);
Query OK, 0 rows affected (0.02 sec)

स्ट्रिंग को यूनिकोड में परिवर्तित करने के बाद, यह 112 के बजाय 224 का परिणाम देती है क्योंकि यूनिकोड में एक वर्ण 2-बाइट्स लेता है जैसा कि नीचे दिखाया गया है:

mysql> Select BIT_LENGTH(@A);
+----------------+
| BIT_LENGTH(@A) |
+----------------+
| 224            |
+----------------+
1 row in set (0.00 sec)

  1. - MySQL सेलेक्ट स्टेटमेंट में IF() फ़ंक्शन?

    IF() फ़ंक्शन एक शर्त के आधार पर वैल्यू वापस करता है। सिंटैक्स इस प्रकार है: SELECT IF(yourCondition, yourMessageIfConditionBecomesTrue,yourMessageIfConditionBecomesFalse) from yourTableName; आइए पहले एक टेबल बनाते हैं: mysql> create table DemoTable    (    Value int   &nb

  1. - क्या MySQL में रो के लिए MAX फ़ंक्शन है न कि कॉलम के लिए?

    हां, आप रो से अधिकतम (कॉलम से नहीं) चेक करने के लिए MySQL से GREATEST() का उपयोग कर सकते हैं। आइए पहले एक टेबल बनाते हैं: mysql> create table DemoTable    (    Value1 int,    Value2 int,    Value3 int    ); Query OK, 0 rows affected (0.58 sec) इन्

  1. - MySQL में EXCEPT काम नहीं कर रहा?

    आप MySQL में EXCEPT का उपयोग नहीं कर सकते। आप NOT IN ऑपरेटर के साथ काम करके वही परिणाम प्राप्त कर सकते हैं। आइए पहले एक टेबल बनाते हैं: mysql> create table DemoTable1  (  Number1 int  ); Query OK, 0 rows affected (0.71 sec) इन्सर्ट कमांड का उ