POZIOM to słowo kluczowe Oracle , choć nie zastrzeżone. Jeśli chcesz użyć go jako nazwy obiektu, musisz przedstawić nazwę obiektu za pomocą cytowanego identyfikatora używanie podwójnych cudzysłowów za każdym razem, gdy odwołujesz się do tego obiektu.
SQL> SELECT keyword, reserved FROM V$RESERVED_WORDS WHERE keyword='LEVEL';
KEYWORD R
------------------------------ -
LEVEL N
SQL>
To jest powód, jeśli używasz słowa kluczowego LEVEL jako identyfikatora bez cudzysłowów , wygeneruje błąd:
SQL> CREATE TABLE t(level NUMBER);
CREATE TABLE t(level NUMBER)
*
ERROR at line 1:
ORA-00904: : invalid identifier
Teraz, zgodnie z dokumentacją dotyczącą Nazwy i kwalifikatory obiektów bazy danych , jeśli utworzysz obiekt za pomocą podwójnych cudzysłowów, rozróżniana jest wielkość liter i musi być zawsze używany w ten sam sposób, niezależnie od tego, gdzie znajduje się odniesienie do obiektu.
Na przykład
SQL> CREATE TABLE t1("level" NUMBER);
Table created.
SQL>
SQL> ALTER TABLE t1 RENAME COLUMN "level" to clevel;
Table altered.
SQL>
SQL> CREATE TABLE t2("LEVEL" NUMBER);
Table created.
SQL>
SQL> ALTER TABLE t2 RENAME COLUMN "LEVEL" to clevel;
Table altered.
SQL>
Lepiej nie używać słowa kluczowego i podać odpowiednią konwencję nazewnictwa.
SQL> CREATE TABLE t(clevel NUMBER);
Table created.
SQL>