अपनी सूचियों को एक बहु-आयामी सरणी में बदलें और फिर आप कुछ ऐसा कर सकते हैं:
Oracle सेटअप :
VARCHAR2 (100) की तालिका के रूप में टाइप स्ट्रिंगलिस्ट बनाएं; / स्ट्रिंगलिस्ट की तालिका के रूप में स्ट्रिंगलिस्ट_लिस्ट बनाएं; / स्ट्रिंगलिस्ट_लिस्ट की तालिका के रूप में स्ट्रिंगलिस्ट_लिस्ट_लिस्ट बनाएं; / प्रक्रिया लोड_लिस्ट बनाएं (स्ट्रिंगलिस्ट_लिस्ट_लिस्ट में इन_लिस्ट) ASBEGIN NULL; -- सूची के साथ कुछ करेंEND;/
जावा :
आयात करें .sql.ARRAY; आयात ओरेकल। कनेक्शन कॉन =DriverManager.getConnection ("jdbc:oracle:पतला:@ लोकलहोस्ट:1521:XE", "उपयोगकर्ता नाम", "पासवर्ड"); // #toArray(T[]) String[] l1 ={ "Math", "Physics" } का उपयोग करके अपनी सूचियों को सरणियों में बदलें; स्ट्रिंग [] l2 ={"अंग्रेज़ी", "स्पेनिश"}; स्ट्रिंग [] l3 ={ "फ्रेंच", "जर्मन"}; ArrayDescriptor des =ArrayDescriptor.createDescriptor ("STRINGLIST_LIST_LIST", con); ARRAY स्कूल =नया ARRAY(des, con, newString[][][]{ new String[][]{l1, l3}, new String[][]{l2, l3}}); कॉल करने योग्य स्टेटमेंट सेंट =con.prepareCall ("{कॉल एड_स्कूल (:स्कूल)}"); // प्रक्रिया के लिए एक सरणी पास करना - ((OracleCallableStatement) st).setARRAYAtName ("स्कूल", स्कूल); st.execute (); } पकड़ें (ClassNotFoundException | SQLException e) {System.out.println(e); } }}