it-swarm-eu.dev

Existuje nějaký rozdíl mezi Rem a - komentáře pro SQL * Plus?

V SQL * Plus Prompt, Rem a -- se kvalifikují jako indikátory komentářů:

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

Existuje vůbec nějaký rozdíl mezi těmito dvěma technikami komentování?

13
Lazer

Rozdíl je v tom, že -- a /* */ lze použít v bloku PL/SQL, zatímco REM[ARK] nelze. Následující bude fungovat v SQL * Plus:

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

Nebudou:

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

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

11.2 dokumentace ke všem typům komentářů obsahuje další informace o komentářích. Základy jsou ...

Do skriptu můžete zadávat komentáře třemi způsoby:

  • pomocí příkazu SQL * Plus REMARK pro komentáře na jednom řádku.

  • pomocí oddělovačů komentářů SQL/* ... */pro jednorázové nebo víceřádkové komentáře.

  • pomocí komentářů ANSI/ISO (American National Standards Institute/International Standards Organization) - - pro komentáře v jednom řádku.

Dokumentace také obsahuje poznámky ke čtyřem místům, která by neměla být použita, ale neobsahují žádné další rozdíly.

18
Leigh Riffel

REM je podporován kvůli způsobu, jakým jsou komentovány soubory MS BATCH, a tento nástroj je používán v automatizačních prostředích.

- je podporován, protože je součástí standardu SQL. ( http://www.contrib.andrew.cmu.edu/~shadow/sql/sql1992.txt strana 83 cf <comment introducer> ::= <minus sign><minus sign>[<minus sign>...])

2
jcolebrand

Ne, žádný rozdíl by neměl být.

0
mrdenny