मेरे पास मेरे प्रोग्राम के परिणामों को स्पूल करने के बारे में एक प्रश्न है। मेरा नमूना एसक्यूएल स्क्रिप्ट इस तरह दिखता है।ऑरैकल एसक्यूएल स्क्रिप्ट स्पूल फ़ाइल कैसे बनाएं
whenever sqlerror exit failure rollback
set heading off
set arraysize 1
set newpage 0
set pages 0
set feedback off
set echo off
set verify off
declare
ab varchar2(10) := 'Raj';
cd varchar2(10);
a number := 10;
c number;
d number;
begin
c := a+10;
select ab,c into cd,d from dual;
end;
SPOOL
select cd,d from dual;
SPOOL OFF
EXIT;
ऊपर स्क्रिप्ट काम नहीं करता है, लेकिन मैं शुरू अंत ब्लॉक हम कुछ मूल्यों की गणना में इस जहां की तरह कुछ करना चाहते हैं और मैं उन परिणामों स्पूल करना चाहते हैं।
धन्यवाद।
क्या होता है यदि ब्लॉक में कर्सर होता है और यह प्रारंभ-अंत में लूप होता है। 'लूप सी: = ए +10; सी में चयन करें: डी से दोहरी; एंड लूप; अंत; SPOOL चयन करें: दो से दोहरी; स्पूल ऑफ़ एक्स्टिट; ' तो, अब यह सभी परिणाम देगा या फिर अंतिम आउटपुट में संग्रहीत होगा: डी। लूप होने पर स्पूल कैसे करें। – user987900
कर्सर के प्रत्येक पुनरावृत्ति पर मान को आउटपुट करने के लिए आप कर्सर लूप के भीतर DBMS_OUTPUT का उपयोग कर सकते हैं। संपादन देखें .. – Ollie
हाय ओली, मेरे पास एक और सवाल है। जब मैं SQL * प्लस से चलाता हूं तो उपरोक्त कोड ठीक काम करता है। लेकिन, मेरे पास एक शेल स्क्रिप्ट है जो इस SQL स्क्रिप्ट को आमंत्रित करती है और आउटपुट को टेक्स्ट फ़ाइल में स्पूल करती है। मैंने ओरेकल ऐप्स में शेल स्क्रिप्ट पंजीकृत की, और जब मैं ऐप्स से चलाने के लिए अनुरोध सबमिट करता हूं। यह सामान्य और चल रहा है लेकिन यह कभी पूरा नहीं हो जाता है। क्या, मुझे शैल स्क्रिप्ट से आविष्कार करते समय उपरोक्त स्क्रिप्ट में कोई भी परिवर्तन करना होगा। – user987900