इस सवाल का पहले से ही एक उत्तर है: < / P>
- 11 जवाब
मैं लागू करने की कोशिश कर रहा हूँ एक समाधान जिसे मैंने एक (बेहतर-सरल-में-एक-सिंटेक्स-अर्थ) क्वेरी के साथ कई रिकॉर्डों को अपडेट करने के लिए Michiel de Mare से मिला। उदाहरण कोड जिसे मैं सीखने की कोशिश कर रहा हूं, इस तरह दिखता है:
तालिका (आईडी, कॉल 1, कॉल 2) मूल्यों (INR1,1), (2,2,3) INSERT , (3 9 .3), (4,10,12) डुप्लिकेट की कुंजी अद्यतन कॉल 1 = मूल्य (कॉल 1), कॉल 2 = मूल्य (कॉल 2);
मैं ओरेकल का उपयोग कर रहा हूँ (और अभी तक एसक्यूएल क्वेरीज़ में वाकिफ नहीं हूं)।
कुछ डायनामिक सामग्री के आधार पर, मैंने अपनी क्वेरी को उपरोक्त समान । यह कितने अभिलेखों को अद्यतन कर रहा है, इसके आधार पर यह लंबाई में भिन्न हो सकती है, लेकिन यह मेरे द्वारा उत्पन्न की जाने वाली क्वेरी का एक उदाहरण है:
my_table (question_id, ug) VALUES में INSERT (30,0)
उपरोक्त क्वेरी में यह त्रुटि हो रही है:
मूल संदेश: ORA- 00 933: SQL कमांड ठीक से समाप्त नहीं हुआ
मैं एक कंटेंट मैनेजमेंट सिस्टम से काम कर रहा हूं जिसमें फ़ंक्शन कॉल है जो क्वेरी चलाता है; इस ढांचे के भीतर मुझे नहीं लगता कि यह उचित है, लेकिन मुझे ''; ' प्रश्नों के अंत में, हालांकि, मैंने इसे सेमीकोलन के बिना और बिना कोशिश की।
ओरेकल नहीं है डुप्लिकेट कुंजी अपडेट पर
है का उपयोग करें
MERGE इसके बजाय:
my_table trg का उपयोग करने में मिर्ज करें (चयन 30 के रूप में प्रश्न_आईडी, 0 और यूग के रूप में डुएल यूनियन सभी का चयन करें 31,1 से दोहरे) src पर (src.question_id = trg.question_id) जब उसमें शामिल नहीं किया गया तो प्रश्न (प्रश्न_आर्ड, यूग) मूल्य (src.question_id, src.ug) जब अद्यतन की गई थी तो trg.ug = src अद्यतन करें। ओग
No comments:
Post a Comment