मारियाडीबी में, JSON_QUOTE()
एक अंतर्निहित फ़ंक्शन है जो एक वैध JSON स्ट्रिंग शाब्दिक उत्पन्न करता है जिसे JSON दस्तावेज़ में शामिल किया जा सकता है।
यह स्ट्रिंग को दोहरे उद्धरण चिह्नों के साथ लपेटता है और आंतरिक उद्धरणों और अन्य विशेष वर्णों से बच निकलता है, एक utf8mb4 स्ट्रिंग लौटाता है।
सिंटैक्स
वाक्य रचना इस प्रकार है:
JSON_QUOTE(json_value)
उदाहरण
प्रदर्शित करने के लिए यहां एक उदाहरण दिया गया है।
SELECT JSON_QUOTE('Small') AS 'Result';
परिणाम:
+---------+ | Result | +---------+ | "Small" | +---------+
एस्केप कैरेक्टर
स्ट्रिंग को दोहरे उद्धरण चिह्नों में लपेटने के अलावा, JSON_QUOTE()
आंतरिक उद्धरणों और अन्य विशेष पात्रों से भी बचता है।
उदाहरण:
SELECT JSON_QUOTE('By "small", she meant "tiny"') AS 'Result';
परिणाम:
+------------------------------------+ | Result | +------------------------------------+ | "By \"small\", she meant \"tiny\"" | +------------------------------------+
इस मामले में, मूल स्ट्रिंग में दोहरे उद्धरण होते हैं और इसलिए परिणामी स्ट्रिंग बैकस्लैश के साथ प्रत्येक दोहरे उद्धरण से बच जाती है।
यदि डबल कोट्स बच नहीं गए थे, तो वे बाहरी डबल कोट्स में हस्तक्षेप करेंगे, और अनजाने में स्ट्रिंग को जल्दी समाप्त कर देंगे।
JSON ऑब्जेक्ट
यहां JSON ऑब्जेक्ट के स्ट्रिंग प्रस्तुतिकरण को उद्धृत करने का एक उदाहरण दिया गया है:
SELECT JSON_QUOTE('{ "name": "Brandy"}');
परिणाम:
+-----------------------------------+ | JSON_QUOTE('{ "name": "Brandy"}') | +-----------------------------------+ | "{ \"name\": \"Brandy\"}" | +-----------------------------------+
सरणी
यहां एक सरणी के स्ट्रिंग प्रतिनिधित्व को उद्धृत करने का एक उदाहरण दिया गया है:
SELECT JSON_QUOTE('[ "Small", "Medium", "Large" ]');
परिणाम:
+----------------------------------------------+ | JSON_QUOTE('[ "Small", "Medium", "Large" ]') | +----------------------------------------------+ | "[ \"Small\", \"Medium\", \"Large\" ]" | +----------------------------------------------+
नंबर
एक नंबर पास करना NULL
returns देता है :
SELECT JSON_QUOTE(10) AS 'Result';
परिणाम:
+--------+ | Result | +--------+ | NULL | +--------+
संख्या को एक स्ट्रिंग के रूप में प्रदान करने की आवश्यकता होगी। फिर इसे उद्धृत स्ट्रिंग के रूप में वापस कर दिया जाएगा।
उदाहरण:
SELECT JSON_QUOTE('10') AS 'Result';
परिणाम:
+--------+ | Result | +--------+ | "10" | +--------+
अशक्त तर्क
अगर तर्क NULL
है , परिणाम NULL
. है :
SELECT JSON_QUOTE(null);
परिणाम:
+------------------+ | JSON_QUOTE(null) | +------------------+ | NULL | +------------------+
गलत पैरामीटर गणना
कॉलिंग JSON_QUOTE()
बिना तर्क के त्रुटि उत्पन्न होती है:
SELECT JSON_QUOTE();
परिणाम:
ERROR 1582 (42000): Incorrect parameter count in the call to native function 'JSON_QUOTE'
जब आप बहुत अधिक तर्क देते हैं तो ऐसा ही होता है:
SELECT JSON_QUOTE('a', 'b');
परिणाम:
ERROR 1582 (42000): Incorrect parameter count in the call to native function 'JSON_QUOTE'
अधिक उदाहरण
मारियाडीबी JSON_QUOTE()
उसी नाम के MySQL फ़ंक्शन के समान कार्य करता है। देखें JSON_QUOTE()
- अधिक उदाहरणों के लिए MySQL में JSON मानों के रूप में उपयोग किए जाने वाले स्ट्रिंग्स में वर्णों से कैसे बचें।