मैं डेटा विश्लेषण टूल का उपयोग कर रहा हूं और मेरे पास आवश्यक है कि उपयोगकर्ता से मूल्य स्वीकार किया जाए, उसे पैरामीटर के रूप में पास करें और उसे तालिका में स्टोर करें। सुंदर straighforward तो मैं निम्नलिखित बयानसमाधान "एक क्वेरी के अंदर एक डीएमएल ऑपरेशन नहीं कर सकता"?
begin
complex('SomeValue');
end;
यह ठीक काम किया उपयोग करते हुए इस
create or replace
procedure complex(datainput in VARCHAR2)
is
begin
insert into dumtab values (datainput);
end complex;
मैं SQL डेवलपर में इस निष्पादित लिखने के लिए बैठे थे, और मूल्य तालिका में सम्मिलित किया गया था। हालांकि, उपर्युक्त विवरण डेटा विश्लेषण उपकरण में समर्थित नहीं हैं, इसलिए मैंने इसके बजाय एक फ़ंक्शन का उपयोग करने का प्रयास किया। निम्नलिखित फ़ंक्शन का कोड है, यह संकलित करता है।
create or replace
function supercomplex(datainput in VARCHAR2)
return varchar2
is
begin
insert into dumtab values (datainput);
return 'done';
end supercomplex;
एक बार फिर मैं SQL डेवलपर में यह क्रियान्वित करने की कोशिश की, लेकिन मैं मिल गया निम्नलिखित कोड
select supercomplex('somevalue') from dual;
मेरा प्रश्न है क्रियान्वित करने पर एक प्रश्न अंदर कोई DML कार्रवाई नहीं कर सकते हैं - मैं एक बयान की आवश्यकता है जो एसक्यूएल डेवलपर या में उल्लिखित फ़ंक्शन चला सकता है - एक ऐसा फ़ंक्शन जो मैं देख रहा हूं जिसे चुनकर निष्पादित किया जा सकता है बयान। - यदि मैं जो पूछ रहा हूं वह करना संभव नहीं है, तो मुझे एक कारण चाहिए ताकि मैं अपने प्रबंधक को सूचित कर सकूं क्योंकि मैं पीएल/एसक्यूएल में बहुत नया हूं (एक सप्ताह पुराना?) इसलिए मुझे नियमों से अवगत नहीं है और वाक्यविन्यास।
पीएस मैं कैसे इच्छा इस सी ++ या यहाँ तक कि जावा :(
संपादित था
मैं क्योंकि (जो उपकरण है) DMine में इसे चलाने के क्रम में अगर यह होता है परीक्षण करने के लिए इससे पहले कि SQL डेवलपर पर समारोह चलाने की आवश्यकता वैध है या नहीं। कुछ भी एसक्यूएल में अमान्य DMine में भी अवैध है, लेकिन नहीं दूसरी तरह के आसपास।
मदद के लिए धन्यवाद, मैं इस स्थिति से समझा और क्यों यह अवैध/है के रूप में
आपको जो त्रुटि मिल रही है वह SQL डेवलपर विशिष्ट नहीं है, यह ओरेकल त्रुटि है और यह बहुत सरल है: आप किसी क्वेरी में डेटाबेस में संशोधन नहीं कर सकते हैं। अनुमानतः यह एसीआईडी अनुपालन को बनाए रखने के लिए अलगाव स्तर के कारण है; अन्यथा आप एक ही समय में पूछताछ कर रहे टेबल को संशोधित कर सकते हैं और सभी नरक ढीले टूट जाएंगे! – Xophmeister
क्या आप समझा सकते हैं कि आपको SQL डेवलपर में फ़ंक्शन को कॉल करने की आवश्यकता क्यों है? यह तथ्य इतना मायने क्यों रखता हे? – APC
डेटा विश्लेषण उपकरण में समर्थित नहीं है? क्या उपकरण? यदि आप इस टूल में एसक्यूएल चला सकते हैं, तो आपको एक स्क्रिप्ट चलाने में सक्षम होना चाहिए (अज्ञात ब्लॉक जिसे आप प्रारंभ में दिखाते हैं)। – tbone