संग्रहीत कार्यविधियाँ उप रूटीन हैं, SQL कथनों का खंड जो SQL कैटलॉग में संग्रहीत हैं। सभी एप्लिकेशन जो रिलेशनल डेटाबेस (जावा, पायथन, पीएचपी आदि) तक पहुंच सकते हैं, इन प्रक्रियाओं तक पहुंच सकते हैं।
संग्रहीत कार्यविधियों में IN और OUT पैरामीटर या दोनों होते हैं। यदि आप सेलेक्ट स्टेटमेंट का उपयोग करते हैं तो वे परिणाम सेट वापस कर सकते हैं, वे कई परिणाम-सेट लौटा सकते हैं।
उदाहरण
मान लीजिए हमारे पास प्रेषण . नाम की एक तालिका है निम्नलिखित डेटा के साथ MySQL डेटाबेस में:
<पूर्व>+--------------+----------------------------+----------- ------+---------------------+| Product_Name | Date_Of_Dispatch | Time_Of_Dispatch | स्थान |+--------------+----------------------------+--------------- -----+---------------------+| की-बोर्ड | 1970-01-19 | 08:51:36 | हैदराबाद || इयरफ़ोन | 1970-01-19 | 05:54:28 | विशाखापत्तनम || माउस | 1970-01-19 | 04:26:38 | विजयवाड़ा | -----+---------------------+और अगर हमने इस तालिका से मूल्यों को पुनः प्राप्त करने के लिए myProcedure नाम की एक प्रक्रिया बनाई है जैसा कि नीचे दिखाया गया है:
प्रक्रिया बनाएं myProcedure ()-> BEGIN-> SELECT * from Dispatches;-> END //
उदाहरण
निम्नलिखित एक JDBC उदाहरण है जो JDBC प्रोग्राम का उपयोग करके उपर्युक्त संग्रहीत कार्यविधि को कॉल करता है।
आयात करें ]) SQLException फेंकता है {// ड्राइवर DriverManager.registerDriver को पंजीकृत करना (नया com.mysql.jdbc.Driver ()); // कनेक्शन प्राप्त करना स्ट्रिंग mysqlUrl ="jdbc:mysql://localhost/sampleDB"; कनेक्शन कॉन =DriverManager.getConnection (mysqlUrl, "रूट", "पासवर्ड"); System.out.println ("कनेक्शन स्थापित ......"); // एक कॉल करने योग्य स्टेटमेंट तैयार करना कॉल करने योग्य स्टेटमेंट cstmt =con.prepareCall ("{कॉल myProcedure ()}"); // परिणाम प्राप्त करना परिणामसेट आरएस =cstmt.executeQuery (); जबकि (rs.next ()) {System.out.println ("उत्पाद का नाम:" + rs.getString ("Product_Name")); System.out.println ("प्रेषण की तिथि:" + rs.getDate ("Date_Of_Dispatch")); System.out.println ("प्रेषण की तिथि:" + rs.getTime ("Time_Of_Dispatch")); System.out.println ("स्थान:" + rs.getString ("स्थान")); System.out.println (); } }}आउटपुट
कनेक्शन स्थापित...उत्पाद का नाम:कुंजी बोर्ड प्रेषण की तिथि:1970-01-19प्रेषण का समय:08:51:36 स्थान:हैदराबाद उत्पाद का नाम:इयरफ़ोन प्रेषण की तिथि:1970-01-19 प्रेषण का समय:05:54 :28 स्थान:विशाखापत्तनम उत्पाद का नाम:माउस प्रेषण की तिथि:1970-01-19 प्रेषण का समय:04:26:38 स्थान:विजयवाड़ा