web-dev-qa-db-fra.com

Y a-t-il une différence entre Rem et - commentaires pour SQL * Plus?

Sur l'invite SQL * Plus, Rem et -- peuvent être considérés comme des indicateurs de commentaire:

Rem this is a comment
-- this is also a comment
create table emp (
id number primary key,
name cvarchar2(40));

Y a-t-il une différence entre les deux techniques de commentaire?

13
Lazer

La différence est que -- et /* */ peut être utilisé dans un bloc PL/SQL, tandis que REM[ARK] ne peut pas. Les éléments suivants fonctionneront dans SQL * Plus:

REM comment
-- comment
/* comment */
begin
   DBMS_OUTPUT.PUT_LINE('Test'); --comment
   DBMS_OUTPUT.PUT_LINE('Test'); /* comment */
end; 
/

Ceux-ci ne:

begin
   DBMS_OUTPUT.PUT_LINE('Test'); REM comment
end; 
/

begin
   REM comment
   DBMS_OUTPUT.PUT_LINE('Test');
end; 
/

La documentation 11.2 sur tous les types de commentaires contient plus d'informations sur les commentaires. Les bases sont ...

Vous pouvez saisir des commentaires dans un script de trois manières:

  • en utilisant la commande SQL * Plus REMARK pour les commentaires sur une seule ligne.

  • en utilisant les délimiteurs de commentaires SQL/* ... */pour les commentaires sur une ou plusieurs lignes.

  • en utilisant les commentaires ANSI/ISO (American National Standards Institute/International Standards Organisation) - - pour les commentaires sur une seule ligne.

La documentation comprend également des notes sur quatre endroits où les commentaires ne doivent pas être utilisés, mais ceux-ci n'incluent pas d'autres différences.

18
Leigh Riffel

REM est pris en charge en raison de la façon dont les fichiers MS BATCH sont commentés, et cet outil est utilisé avec les environnements d'automatisation.

- est pris en charge car il fait partie de la norme SQL. ( http://www.contrib.andrew.cmu.edu/~shadow/sql/sql1992.txt page 83 cf <comment introducer> ::= <minus sign><minus sign>[<minus sign>...])

2
jcolebrand

Non, il ne devrait y avoir aucune différence.

0
mrdenny