web-dev-qa-db-fra.com

Imprimer du texte dans la fenêtre de la feuille de calcul SQL Oracle Developer Developer

J'utilise Oracle SQL (dans SQLDeveloper, à l'aide de la feuille de calcul SQL). Je voudrais imprimer une déclaration avant ma sélection, telle que

PRINT 'Querying Table1';
SELECT * from Table1;

Que dois-je utiliser pour imprimer/afficher la sortie texte? Ce n'est pas Print, car cela me donne l'erreur suivante: Bind Variable Table1 n'est PAS DÉCLARÉ. DBMS_OUTPUT.PUT_LINE est une commande inconnue. (Évidemment, je suis un utilisateur SQLDeveloper et Oracle inexpérimenté. Il doit y avoir un synonyme pour Print, mais j'ai du mal à trouver de l'aide sans savoir de quoi il s'agit.)

77
thursdaysgeek

enter image description here

pour des commentaires simples:

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

-- do something

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

tu devrais obtenir:

anonymous block completed
simple comment

anonymous block completed
second simple comment

si vous voulez imprimer les résultats des variables, voici un autre exemple:

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;

votre sortie devrait être:

anonymous block completed
first comment

anonymous block completed
comment2
128
Perry Tribolet
Prompt text to print

Remarque: doit utiliser Exécuter en tant que script (F5) Pas Instruction d'exécution (Ctl + Entrée)

35
H77

Vous pouvez définir echo sur:

set echo on
REM Querying table
select * from dual;

Dans SQLDeveloper, appuyez sur F5 pour exécuter en tant que script.

20
Eddie Awad

Vous pouvez mettre votre texte dans une instruction select telle que ...

SELECT 'Querying Table1' FROM dual;
12
Leigh Riffel

Pour moi, je ne pouvais que le faire fonctionner avec

set serveroutput on format Word_wrapped;

Le wraped et le WRAPPED ont juste généré des erreurs: La commande SQLPLUS a échoué - pas assez d'arguments

7
Michael Erickson

La réponse principale laissait de côté une étape pour les nouvelles installations où il fallait ouvrir la fenêtre de sortie de dbms.

 enter image description here

Ensuite, le script que j'ai utilisé:

dbms_output.put_line('Start');

Un autre script:

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

Si vous ne souhaitez pas que toutes vos instructions SQL soient répercutées, mais souhaitez uniquement voir les résultats facilement identifiables de votre script, procédez comme suit:

activer l'écho

REM MyFirstTable

désactiver l'écho

supprimer de MyFirstTable;

activer l'écho

REM MySecondTable

désactiver l'écho

supprimer de MySecondTable;

La sortie de l'exemple ci-dessus ressemblera à ceci:

-REM MyFirstTable

13 lignes supprimées.

-REM MySecondTable

27 lignes supprimées.

1
Frank Staheli