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

एक साधारण MySQL फ़ंक्शन कैसे बनाएं?

<घंटा/>

आप create function कमांड का उपयोग करके एक फंक्शन बना सकते हैं। वाक्य रचना इस प्रकार है -

delimiter //DROP FUNCTION यदि आपकाFunctionName मौजूद है; FUNCTION yourFunctionName(Parameter1,...N) रिटर्न टाइप करेंBEGIN# डिक्लेयरिंग वेरिएबल;# MySQL स्टेटमेंट्सEND // डिलीमीटर;

सबसे पहले, यहां हम एक टेबल बनाएंगे और टेबल में कुछ रिकॉर्ड जोड़ेंगे। उसके बाद, एक साधारण फ़ंक्शन बनाया जाएगा। तालिका बनाने के लिए निम्नलिखित क्वेरी है -

mysql> टेबल बनाएं ViewDemo −> ( −> Id int, −> Name varchar(200), −> Age int −>);क्वेरी ओके, 0 पंक्तियाँ प्रभावित (0.58 सेकंड)

इंसर्ट कमांड का उपयोग करके टेबल में रिकॉर्ड डालें। क्वेरी इस प्रकार है -

mysql> ViewDemo मानों में डालें (1, 'जॉन', 23); क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.15 सेकंड) mysql> ViewDemo मानों में डालें (2, 'सैम', 24); क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.15 सेकंड)

चयन कथन का उपयोग करके तालिका से सभी रिकॉर्ड प्रदर्शित करें। क्वेरी इस प्रकार है -

mysql> ViewDemo से *चुनें;

निम्न आउटपुट है -

<पूर्व>+----------+----------+------+| आईडी | नाम | उम्र |+------+------+------+| 1 | जॉन | 23 || 2 | सैम | 24 |+----------+------+------+2 पंक्तियाँ सेट में (0.00 सेकंड)

अब हम एक ऐसा फंक्शन बनाएंगे जो पूर्णांक मापदंडों को लेता है और स्ट्रिंग्स लौटाता है। इस फ़ंक्शन का उद्देश्य दिए गए आईडी के साथ रिकॉर्ड खोजना है। यदि दी गई आईडी तालिका आईडी से मेल खाती है तो यह नाम लौटाता है अन्यथा यह एक त्रुटि संदेश देगा जैसे नहीं मिला।

फ़ंक्शन इस प्रकार है -

mysql> SET GLOBAL log_bin_trust_function_creators =1;क्वेरी ठीक है, 0 पंक्तियाँ प्रभावित (0.00 सेकंड)mysql> यदि searchRecord मौजूद है तो ड्रॉप फ़ंक्शन; -> -> फ़ंक्शन बनाएं searchRecord(yourId int) चार (100) देता है -> प्रारंभ करें -> Name1 char(100) डिफ़ॉल्ट घोषित करें "इस आईडी के लिए कोई नाम नहीं मिला"; -> ViewDemo से Name1 में Name चुनें जहां Id =yourId; -> वापसी नाम1; -> समाप्त // क्वेरी ठीक है, 0 पंक्तियाँ प्रभावित (0.21 सेकंड) क्वेरी ठीक है, 0 पंक्तियाँ प्रभावित (0.33 सेकंड) mysql> सीमांकक;

अब यह जांचने के लिए कि फ़ंक्शन दिए गए आईडी के साथ काम कर रहा है।

केस 1 - जब दी गई आईडी मौजूद हो।

क्वेरी इस प्रकार है -

mysql> searchRecord(2) as Found का चयन करें;

निम्न आउटपुट है -

<पूर्व>+----------+| मिला |+----------+| सैम |+----------+1 पंक्ति सेट में (0.00 सेकंड)

केस 2 - जब दी गई आईडी मौजूद न हो।

क्वेरी इस प्रकार है -

mysql> searchRecord(100) as Found चुनें;

रिकॉर्ड को प्रदर्शित नहीं करने वाला आउटपुट निम्न है -

<पूर्व>+-------------------------------------+| मिला |+--------------------------+| इस आईडी के लिए कोई नाम नहीं मिला |+---------------------------+1 पंक्ति सेट में (0.00 सेकंड)
  1. MySQL में कमांड लाइन पर डेटाबेस कैसे बनाएं?

    सबसे पहले, आपको कमांड प्रॉम्प्ट खोलने की आवश्यकता है। आप शॉर्टकट windows+R कुंजी का उपयोग करके खोल सकते हैं। स्क्रीनशॉट इस प्रकार है - अब CMD टाइप करें और OK बटन दबाएं - अब निम्न कमांड प्रॉम्प्ट दिखाई देगा - अब MySQL बिन डायरेक्टरी में पहुँचें। स्क्रीनशॉट इस प्रकार है - डेटाबेस बनाने के

  1. कैसे एक MySQL दृश्य बनाने के लिए?

    एक MySQL व्यू बनाने के लिए, नीचे दिए गए सिंटैक्स के अनुसार CREATE VIEW का उपयोग करें - अपने व्यूनाम को अपने टेबलनाम से चुनें * के रूप में बनाएं; आइए पहले एक टेबल बनाएं - टेबल बनाएं DemoTable1802 (StudentId int, StudentName varchar(20));क्वेरी ठीक, 0 पंक्तियाँ प्रभावित (0.00 सेकंड) इंसर्ट कमांड का

  1. कैसे एक MySQL अनुक्रम बनाने के लिए?

    MySQL में सीक्वेंस क्या है? MySQL में, अनुक्रम पूर्णांकों की एक सूची को संदर्भित करता है जो निर्दिष्ट होने पर 1 या 0 से शुरू होने वाले आरोही क्रम में उत्पन्न होता है। कई अनुप्रयोगों को अनुक्रमों की आवश्यकता होती है जिनका उपयोग विशेष रूप से पहचान के लिए अद्वितीय संख्याएं उत्पन्न करने के लिए किया जाए