Ola amigos, boa tarde. Estou fazendo um script (exemplo abaixo) e nele estou
tendo 2 problemas.

Testei em Oracle 8i (Win2000), 9r2(Win2000) e 10r2(Win2003)

Duvida - 1
Não consigo escreve linhas em branco

Duvida - 2
Gostaria de saber se existe algum modo não pedir o valor dos parâmetros 2, 3
e etc se não forem usados. No meu exemplo o parâmetro 2 só é usado se o
parâmetro 1 não for op1. A solução poderia ser criar uma procedure, function
e etc.

***** Script *****
set verify off
set feedback off
set serveroutput on
begin
  DBMS_OUTPUT.PUT_LINE ('Linha 1');       
  DBMS_OUTPUT.PUT_LINE ('');              <<<< Esta linha nao sai
  DBMS_OUTPUT.PUT_LINE (' Linha 2');      <<<< O espaço na frente da linha
não sai
  DBMS_OUTPUT.PUT_LINE ('   Linha 3');    <<<< Os espaços na frente da linha
não saem
  DBMS_OUTPUT.PUT_LINE ('');              <<<< Esta linha nao sai
  DBMS_OUTPUT.PUT_LINE ('');              <<<< Esta linha nao sai
  if lower('&1') = 'op1' then
    DBMS_OUTPUT.PUT_LINE ('Opcao 1');  
  elsif (lower('&1') = 'op2') and (lower('&2') = 'x') then
    DBMS_OUTPUT.PUT_LINE ('Opcao 2'); 
  else
    DBMS_OUTPUT.PUT_LINE ('Outra opcao');  
  end if;
end;
/


***** SAIDA NO SQLPLUS *****
15:32:33 DBTSTS (USRDBA) > @x
Enter value for 1: 1
Enter value for 1: 1
Enter value for 2: 1
Linha 1
Linha 2
Linha 3
Outra opcao
15:34:09 PGJDORA (SAJ) >

Responder a