user3837060
user3837060

Reputation:

ORACLE # IF..THEN.. GETTING CODE IN OUTPUT

While executing below program, If I am getting the desire result but my code is also coming in OUTPUT Window of sql developer. How I can avoid the code coming in my output?

Can you please explain what wrong I have done?

Accept Num Prompt ' Please Enter Number between 0-9';
Declare
NUM number := #
BEGIN

IF Num = 0 Then 
Dbms_Output.put_line('You have Entered Zer0');
ELSIF NUM =1 Then 
Dbms_Output.put_line('You have Entered one'); 
ELSIF NUM =2 Then
Dbms_Output.put_line('You have Entered TWO'); 
ELSIF NUM =3 Then
Dbms_Output.put_line('You have Entered THREE'); 
ELSIF NUM =4 Then
Dbms_Output.put_line('You have Entered FOUR'); 
ELSIF NUM =5 Then
Dbms_Output.put_line('You have Entered FIVE'); 
ELSIF NUM =6 Then
Dbms_Output.put_line('You have Entered SIX'); 
ELSIF NUM =7 Then
Dbms_Output.put_line('You have Entered SEVEN');
ELSIF NUM =8 Then
Dbms_Output.put_line('You have Entered EIGHT'); 
ELSIF NUM =9 Then
Dbms_Output.put_line('You have Entered NINE');
ELSE
Dbms_Output.put_line('You have Entered more than single digit');
END IF;
END;

Output of SQL Develper:

old:Declare
NUM number := #
BEGIN

IF Num = 0 Then 
Dbms_Output.put_line('You have Entered Zer0');
ELSIF NUM =1 Then 
Dbms_Output.put_line('You have Entered one'); 
ELSIF NUM =2 Then
Dbms_Output.put_line('You have Entered TWO'); 
ELSIF NUM =3 Then
Dbms_Output.put_line('You have Entered THREE'); 
ELSIF NUM =4 Then
Dbms_Output.put_line('You have Entered FOUR');  
ELSIF NUM =5 Then
Dbms_Output.put_line('You have Entered FIVE'); 
ELSIF NUM =6 Then
Dbms_Output.put_line('You have Entered SIX'); 
ELSIF NUM =7 Then
Dbms_Output.put_line('You have Entered SEVEN');
ELSIF NUM =8 Then
Dbms_Output.put_line('You have Entered EIGHT'); 
ELSIF NUM =9 Then
Dbms_Output.put_line('You have Entered NINE');
ELSE
Dbms_Output.put_line('You have Entered more than single digit');
END IF;
END;
new:Declare
NUM number := 0;
BEGIN

IF Num = 0 Then 
Dbms_Output.put_line('You have Entered Zer0');
ELSIF NUM =1 Then 
Dbms_Output.put_line('You have Entered one'); 
ELSIF NUM =2 Then
Dbms_Output.put_line('You have Entered TWO'); 
ELSIF NUM =3 Then
Dbms_Output.put_line('You have Entered THREE'); 
ELSIF NUM =4 Then
Dbms_Output.put_line('You have Entered FOUR'); 
ELSIF NUM =5 Then
Dbms_Output.put_line('You have Entered FIVE'); 
ELSIF NUM =6 Then
Dbms_Output.put_line('You have Entered SIX'); 
ELSIF NUM =7 Then
Dbms_Output.put_line('You have Entered SEVEN');
ELSIF NUM =8 Then
Dbms_Output.put_line('You have Entered EIGHT'); 
ELSIF NUM =9 Then
Dbms_Output.put_line('You have Entered NINE');
ELSE
Dbms_Output.put_line('You have Entered more than single digit');
END IF;
END;
anonymous block completed
You have Entered Zer0

Upvotes: 0

Views: 52

Answers (1)

Vadim K.
Vadim K.

Reputation: 2446

Add this line to the top of the script:

SET VERIFY OFF

By default, VERIFY is ON and causes SQL*Plus (and SQL Developer) to display code before and after replacing substitution variables. Setting it to OFF disables this behavior.

Upvotes: 1

Related Questions