¿Hay alguna diferencia entre Rem y - comentarios para SQL * Plus?


12

En SQL * Plus, tanto Remy --calificar como indicadores de comentarios:

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

¿Hay alguna diferencia entre las dos técnicas de comentarios?


1
Y no olvides que * * comment * / también es válido.
Cayo

Respuestas:


17

La diferencia es eso --y /* */puede usarse en un bloque PL / SQL, mientras REM[ARK]que no puede. Lo siguiente funcionará en SQL * Plus:

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

Estos no:

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

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

La documentación de 11.2 sobre todos los tipos de comentarios tiene más información de comentarios. Los fundamentos son ...

Puede ingresar comentarios en un script de tres maneras:

  • utilizando el comando SQL * Plus REMARK para comentarios de una sola línea.

  • utilizando los delimitadores de comentarios SQL / * ... * / para comentarios de una o varias líneas.

  • utilizando comentarios ANSI / ISO (Instituto Nacional Americano de Estándares / Organización Internacional de Estándares) - - para comentarios de una sola línea.

La documentación también incluye notas en cuatro lugares donde los comentarios no deben usarse, pero estos no incluyen diferencias adicionales.


Para ser justos, nunca he encontrado un lenguaje que admita REM como un delimitador de comentarios donde esas tres letras no son los primeros caracteres de comando en una línea determinada (cf @REM en archivos por lotes)
jcolebrand

@jcolebrand De hecho.
Leigh Riffel


0

No, no debería haber ninguna diferencia.


1
¿Por qué dos estilos de comentarios entonces?
Lazer

@Lazer: compatibilidad con versiones anteriores, espero
Gaius

1
Creo que REM es válido solo para la herramienta SQLPlus, mientras que - y / ** / provienen del lenguaje, también funcionan en MS SQL - TSQL, por ejemplo.
Marian el
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.