it-swarm.dev

Czy jest jakaś różnica między Rem a komentarzami do SQL * Plus?

W SQL * Plus Monituj zarówno Rem, jak i -- kwalifikuj się jako wskaźniki komentarzy:

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

Czy jest jakaś różnica między tymi dwiema technikami komentowania?

13
Lazer

Różnica polega na tym, że -- i /* */ może być używany w bloku PL/SQL, podczas gdy REM[ARK] nie można. Następujące będą działać w SQL * Plus:

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

Nie będą one:

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

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

Dokumentacja 11.2 dotycząca wszystkich typów komentarzy zawiera więcej informacji na temat komentarzy. Podstawy są ...

Możesz wprowadzić komentarze w skrypcie na trzy sposoby:

  • za pomocą polecenia SQL * Plus REMARK w przypadku komentarzy jednowierszowych.

  • za pomocą ograniczników komentarzy SQL/* ... */do komentarzy jedno- lub wieloliniowych.

  • z wykorzystaniem komentarzy ANSI/ISO (American National Standards Institute/International Standards Organisation) - - w przypadku komentarzy jednowierszowych.

Dokumentacja zawiera również uwagi dotyczące czterech miejsc, w których nie należy stosować komentarzy, ale nie zawierają one żadnych dalszych różnic.

18
Leigh Riffel

REM jest obsługiwany ze względu na sposób komentowania plików MS BATCH, a narzędzie to jest używane w środowiskach automatyzacji.

- jest obsługiwany, ponieważ jest częścią standardu SQL. ( http://www.contrib.andrew.cmu.edu/~shadow/sql/sql1992.txt strona 83 cf <comment introducer> ::= <minus sign><minus sign>[<minus sign>...])

2
jcolebrand

Nie, nie powinno być żadnej różnicy.

0
mrdenny