Oracle SQL डेवलपर SQL वर्कशीट विंडो में टेक्स्ट प्रिंट करें


90

मैं Oracle SQL (SQLDeveloper में, SQL Worksheet का उपयोग करके) का उपयोग कर रहा हूं। मैं अपने चयन से पहले एक वक्तव्य छापना चाहूंगा, जैसे कि

PRINT 'Querying Table1';
SELECT * from Table1;

टेक्स्ट आउटपुट को प्रिंट / शो करने के लिए मैं क्या उपयोग करूं? यह प्रिंट नहीं है, क्योंकि इससे मुझे त्रुटि मिलती है: बिंद वेरिएबल Table1डिक्लेयर नहीं है। DBMS_OUTPUT.PUT_LINE एक अज्ञात कमांड है। (स्पष्ट रूप से, मैं एक अनुभवहीन SQLDeveloper और Oracle उपयोगकर्ता हूँ। प्रिंट के लिए कुछ पर्यायवाची होना चाहिए, लेकिन मुझे यह जानने में मदद किए बिना परेशानी हो रही है कि यह क्या है।

जवाबों:


143

यहाँ छवि विवरण दर्ज करें

सरल टिप्पणियों के लिए:

set serveroutput on format wrapped;
begin
    DBMS_OUTPUT.put_line('simple comment');
end;
/

-- do something

begin
    DBMS_OUTPUT.put_line('second simple comment');
end;
/

आपको मिलना चाहिये:

anonymous block completed
simple comment

anonymous block completed
second simple comment

यदि आप चर के परिणाम का प्रिंट आउट लेना चाहते हैं, तो यहां एक और उदाहरण दिया गया है:

set serveroutput on format wrapped;
declare
a_comment VARCHAR2(200) :='first comment';
begin
    DBMS_OUTPUT.put_line(a_comment);
end;

/

-- do something


declare
a_comment VARCHAR2(200) :='comment';
begin
    DBMS_OUTPUT.put_line(a_comment || 2);
end;

आपका आउटपुट होना चाहिए:

anonymous block completed
first comment

anonymous block completed
comment2

1
पहली पंक्ति सेट सर्वर रैप्यूट ऑन रैप्ड रैप; WRAPPED प्रारूप पर सर्वरआउट सेट किया जाना चाहिए;
जियोग्राफिका

मैं यह काम करने के लिए नहीं मिल सकता। set serveroutput on format word_wrapped; begin dbms_output.put_line('hello world'); end; select * from dual मुझे देता है: select * from dual; Error report: ORA-06550: line 7, column 1: PLS-00103: Encountered the symbol "SELECT" 06550. 00000 - "line %s, column %s:\n%s" *Cause: Usually a PL/SQL compilation error. *Action
dwjohnston

9
SQL डेवलपर के नए संस्करणों में आपको पहले टॉप मेनू मेनू बार का उपयोग करके DBMS आउटपुट विंडो खोलनी होगी: View> Dbms आउटपुट।
ब्रूनो रैनशर्ट

हो सकता है, लेकिन स्क्रीन शॉट और कोई पाठ नहीं,
डेविड मैन

41
PROMPT text to print

नोट: स्क्रिप्ट (F5) रन स्टेटमेंट (Ctl + Enter) के रूप में रन का उपयोग करना चाहिए


1
यह बहुत उपयोगी है। धन्यवाद!
सूर्यलोक 3

रन स्टेटमेंट (सीटीएल + एंटर) के साथ मेरे लिए भी काम करता है।
पास्कल आर।

21

आप इस पर प्रतिध्वनित कर सकते हैं :

set echo on
REM Querying table
select * from dual;

SQLDeveloper में, स्क्रिप्ट के रूप में चलाने के लिए F5 को हिट करें।


मैंने इसे एक उत्तर के रूप में स्वीकार किया था, लेकिन मुझे लगता है कि एक और उत्तर में कुछ और बिंदु हैं, इसलिए मैंने अपनी स्वीकार्यता को बदल दिया। हालांकि, इसने मेरे लिए काम किया, और यह एक अच्छा जवाब है।
thursdaysgeek


8

मुख्य उत्तर ने नए इंस्टाल के लिए एक कदम छोड़ दिया, जहां एक को dbms आउटपुट विंडो को खोलना है।

यहाँ छवि विवरण दर्ज करें

फिर मैंने जो स्क्रिप्ट इस्तेमाल की:

dbms_output.put_line('Start');

एक और स्क्रिप्ट:

set serveroutput on format wrapped;
begin
    DBMS_OUTPUT.put_line('jabberwocky');
end;

7

मेरे लिए, मैं इसे केवल काम करने के लिए प्राप्त कर सकता था

set serveroutput on format word_wrapped;

लिपटे और WRAPPED ने बस त्रुटियां फेंक दी: SQLPLUS कमांड विफल - पर्याप्त तर्क नहीं


1

यदि आप अपने सभी एसक्यूएल बयानों को गूँजना नहीं चाहते हैं, लेकिन आप केवल अपनी स्क्रिप्ट के आसानी से पहचाने जाने योग्य परिणाम देखना चाहते हैं, तो इसे इस तरह से करें:

पर गूंज सेट

रेम MyFirstTable

प्रतिध्वनित करना

MyFirstTable से हटाएं;

पर गूंज सेट

रेम मायसेकंडटेबल

प्रतिध्वनित करना

MySecondTable से हटाएं;

उपरोक्त उदाहरण से आउटपुट कुछ इस तरह दिखाई देगा:

-REM MyFirstTable

13 पंक्तियों को हटाया गया

-REM MySecondTable

27 पंक्तियों को हटाया गया


0

अगर मैं शुरुआत करता हूं - तो यह त्रुटि है। तो मेरे लिए यह काम कर रहा है (और कुछ नहीं):

set serveroutput on;
begin
DBMS_OUTPUT.PUT_LINE('testing');
end;
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.