आप इसके लिए एक गतिशील क्वेरी का उपयोग कर सकते हैं। पहले यूजरनेम के लिए वेरिएबल नेम और पासवर्ड के लिए वेरिएबल नेम सेट करें। वाक्य रचना इस प्रकार है -
सेट @anyVariableName='yourUserName';SET @anyVariableName1='yourpassword';
अब आप MySQL से CONCAT () फ़ंक्शन का उपयोग कर सकते हैं। वाक्य रचना इस प्रकार है -
सेट @yourQueryName =CONCAT(' CREATE USER "',@anyVariableName,'"@"localhost" द्वारा पहचाना गया "',@anyVariableName1,'" ');
आइए तैयार किए गए कथन PREPARE का उपयोग करें। वाक्य रचना इस प्रकार है -
@yourQueryName से अपना StatementVariableName तैयार करें;
अब आप कथन निष्पादित कर सकते हैं। वाक्य रचना इस प्रकार है -
अपना StatementVariableName निष्पादित करें;
DEALLOCATE PREPARE का उपयोग करके उपरोक्त को डील करें। वाक्य रचना इस प्रकार है -
deALLOCATE अपना StatementVariableName तैयार करें;
उपरोक्त सिंटैक्स को समझने के लिए, आइए हम सभी चरणों का पालन करें -
चरण 1 - पहले दो वेरिएबल बनाएं, एक यूजरनेम के लिए और दूसरा SET कमांड का उपयोग करके पासवर्ड के लिए।
उपयोगकर्ता नाम बनाने के लिए क्वेरी इस प्रकार है -
mysql> @UserName सेट करें:='जॉन डो';क्वेरी ओके, 0 पंक्तियाँ प्रभावित (0.00 सेकंड)
पासवर्ड बनाने के लिए क्वेरी।
mysql> सेट @पासवर्ड:='जॉन डो 123456';क्वेरी ओके, 0 पंक्तियाँ प्रभावित (0.00 सेकंड)
चरण 2 - अब उपयोगकर्ता बनाने के लिए CONCAT () फ़ंक्शन का उपयोग करें। क्वेरी इस प्रकार है -
mysql> SET @CreationOfUser =CONCAT(' '> CREATE USER "',@UserName,'"@"localhost" द्वारा पहचाना गया "',@Password,'" ' -> );क्वेरी ठीक है, 0 पंक्तियाँ प्रभावित हैं ( 0.02 सेकंड)
उपरोक्त क्वेरी में, हमने नाम और पासवर्ड के साथ एक उपयोगकर्ता बनाने के लिए @UserName चर नाम और @Password चर नाम का उपयोग किया है।
चरण 3 - अब आपको उपरोक्त यूजर-डिफ़ाइंड वेरिएबल @CreationOfUser का उपयोग करके स्टेटमेंट तैयार करने की आवश्यकता है। क्वेरी इस प्रकार है -
mysql> @CreationOfUser से तैयार करें;क्वेरी ठीक है, 0 पंक्तियाँ प्रभावित हुई हैं (0.00 सेकंड)विवरण तैयार किया गया है
चरण 4 - ऊपर तैयार किए गए स्टेटमेंट को निष्पादित करें। क्वेरी इस प्रकार है -
mysql> निष्पादित सेंट;क्वेरी ठीक है, 0 पंक्तियाँ प्रभावित (0.37 सेकंड)
चरण 5 - उपयोगकर्ता की जाँच करें "जॉन डो" MySQL.user तालिका में बनाया गया है -
mysql> उपयोगकर्ता का चयन करें, MySQL.user से होस्ट करें;
निम्न आउटपुट है -
<पूर्व>+---------------------+----------+| उपयोगकर्ता | मेजबान |+---------------------+-----------+| मनीष | % || User2 | % || mysql.infoschema | % || mysql.session | % || mysql.sys | % || जड़ | % || @उपयोगकर्ता नाम@ | लोकलहोस्ट || एडम स्मिथ | लोकलहोस्ट || जॉन | लोकलहोस्ट || जॉन डो | लोकलहोस्ट || User1 | लोकलहोस्ट || हूँ | लोकलहोस्ट || एचबीस्टूडेंट | लोकलहोस्ट |+---------------------+----------+13 पंक्तियों में सेट (0.00 सेकंड)हां, हमारे पास जॉन डो के साथ एक उपयोगकर्ता नाम है।
चरण 6 - अब, तैयार किए गए स्टेटमेंट को DEALLOCATE करें। क्वेरी इस प्रकार है -
mysql> DEALLOCATE PREPARE st;क्वेरी ठीक है, 0 पंक्तियाँ प्रभावित (0.00 सेकंड)