इसके लिए आप PROCEDURE में WHERE क्लॉज के साथ UPDATE कमांड का उपयोग कर सकते हैं। आइए पहले एक टेबल बनाएं -
mysql> टेबल बनाएं DemoTable -> ( -> Id int, -> FirstName varchar(20), -> LastName varchar(20) -> );क्वेरी ओके, 0 पंक्तियाँ प्रभावित (0.56 सेकंड)
इंसर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें -
mysql> डेमोटेबल मानों में डालें (101, 'डेविड', 'ब्राउन'); क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.15 सेकंड) mysql> डेमोटेबल मानों में डालें (102, 'क्रिस', 'ब्राउन'); क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.08 सेकंड)mysql> डेमोटेबल मानों में डालें (103, 'जॉन', 'डो'); क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.07 सेकंड)
चयन कथन का उपयोग करके तालिका से सभी रिकॉर्ड प्रदर्शित करें -
mysql> डेमोटेबल से *चुनें;
यह निम्नलिखित आउटपुट उत्पन्न करेगा -
<पूर्व>+----------+-----------+----------+| आईडी | प्रथम नाम | अंतिम नाम |+----------+-----------+----------+| 101 | डेविड | ब्राउन || 102 | क्रिस | ब्राउन || 103 | जॉन | डो |+----------+-----------+----------+3 पंक्तियों में सेट (0.00 सेकंड)यहाँ एक संग्रहीत कार्यविधि बनाने की क्वेरी है-
mysql> सीमांकक //mysql> प्रक्रिया बनाएं update_sp(fName varchar(20),lName varchar(20)) -> start -> update DemoTable -> set FirstName=fName, -> LastName=lName -> जहां Id=101; -> समाप्त ->//क्वेरी ठीक है, 0 पंक्तियाँ प्रभावित (0.12 सेकंड)mysql> सीमांकक;
अब आप कॉल कमांड का उपयोग करके एक संग्रहीत कार्यविधि को कॉल कर सकते हैं -
mysql> कॉल update_sp('एडम','स्मिथ');क्वेरी ओके, 1 पंक्ति प्रभावित, 2 चेतावनियाँ (0.08 सेकंड)
आइए एक बार फिर से टेबल रिकॉर्ड देखें -
mysql> डेमोटेबल से *चुनें;
यह निम्नलिखित आउटपुट उत्पन्न करेगा -
<पूर्व>+----------+-----------+----------+| आईडी | प्रथम नाम | अंतिम नाम |+----------+-----------+----------+| 101 | एडम | स्मिथ || 102 | क्रिस | ब्राउन || 103 | जॉन | डो |+----------+-----------+----------+3 पंक्तियों में सेट (0.00 सेकंड)