sql >> Databasteknik >  >> RDS >> Oracle

varför körs 'create table' i sql-skript 3 gånger när man bara använder 1 create-sats?

Du har sagt att du har kommenterat koden. Det är dessa kommentarer som orsakar problemet.

SQL> create table t42(id number(38));

Table created.

SQL> /*insert into t42(id) values (1);*/
create table t42(id number(38))
             *
ERROR at line 1:
ORA-00955: name is already used by an existing object


SQL> /*exec dbms_stats.gather_schema_stats(user);*/
create table t42(id number(38))
             *
ERROR at line 1:
ORA-00955: name is already used by an existing object


SQL> show errors
No errors.
SQL> 

Snedstrecket (/ ) i början av kommentarerna sänder kommandot på nytt i bufferten .

SQL*Plus-dokumentationen säger också :

Så om du ändrar dina kommentarer till att ha ett mellanslag mellan /* och den kommenterade koden som inte kommer att hända, och de kommer att ignoreras:

SQL> create table t42(id number(38));

Table created.

SQL> /* insert into t42(id) values (1); */
SQL> /* exec dbms_stats.gather_schema_stats(user); */
SQL> show errors
No errors.
SQL>



  1. Flera index vs index med flera kolumner

  2. anslut mysql till postgresql

  3. Hur får man alla triggernamn från en databas med Java JDBC?

  4. hur man får summan av en kolumn med kodantändningsfråga