Ispirer SQLWays数据库迁移软件
Oracle的保留字
有保留字在Oracle不能用作标识符(表或者列的名称等)没有用双引号分隔(")。唯一例外的是,您不能使用大写的保留字ROWID如同标识符,即使在双引号。
如果标识符的名称是保留字有双引号,然后您必须使用双引号时,你是指这个对象。作为分隔标识符是大小写敏感的,您应该引用该对象使用的字母相同的情况下,你使用的命名对象时。
例如,如果您创造表有名称"ELSE",然后您应该引用这个表如同"ELSE"和不如同 "Else" 或 "eLSE"。
许多 Oracle保留字是有效的对象或列名称在其他数据库。所以表歉意的从其他数据库到Oracle可以包含Oracle保留字。
例如,LEVEL是保留字在 Oracle,但是它不是保留字在IBM DB2 和 Microsoft SQL Server。列可以被命名为LEVEL宰IBM DB2 和 Microsoft SQL Server,但是 没有 列允许有名称LEVEL 在 Oracle。
当数据库被迁移到Oracle,SQLWays自动化地决定 Oracle的保留字冲突。SQLWays检查表和列的名称为Oracle保留字,和包围它们在双引号。保留字ROWID与分隔标识符替换 "Rowid"。
SQLWays支持下面Oracle的保留字:
表格 86。 Oracle的保留字
ACCESS
|
ADD
|
ALL
|
ALTER
|
AND
|
ANY
|
AS
|
ASC
|
AUDIT
|
BETWEEN
|
BY
|
CHAR
|
CHECK
|
CLUSTER
|
COLUMN
|
COMMENT
|
COMPRESS
|
CONNECT
|
CREATE
|
CURRENT
|
DATE
|
DECIMAL
|
DEFAULT
|
DELETE
|
DESC
|
DISTINCT
|
DROP
|
ELSE
|
EXCLUSIVE
|
EXISTS
|
FILE
|
FLOAT
|
FOR
|
FROM
|
GRANT
|
GROUP
|
HAVING
|
IDENTIFIED
|
IMMEDIAE
|
IN
|
INCREMENT
|
INDEX
|
INITIAL
|
INSERT
|
INTEGER
|
INTERSECT
|
INTO
|
IS
|
LEVEL
|
LIKE
|
LOCK
|
LONG
|
MAXEXTENTS
|
MINUS
|
MISLABEL
|
MODE
|
MODIFY
|
NOAUDIT
|
NOCOMPRESS
|
NOT
|
NOWAIT
|
NULL
|
NUMBER
|
OF
|
OFFLINE
|
ON
|
ONLINE
|
OPTION
|
OR
|
ORDER
|
PCTFREE
|
PRIOR
|
PRIVILEGES
|
PUBLIC
|
RAW
|
RENAME
|
RESOURCE
|
REVOKE
|
ROW
|
ROWID
|
ROWNUM
|
ROWS
|
SELECT
|
SESSION
|
SET
|
SHARE
|
SIZE
|
SMALLINT
|
START
|
SUCCESSFUL
|
SYNONYM
|
SYSDATE
|
TABLE
|
THEN
|
TO
|
TRIGGER
|
UID
|
UNION
|
UNIQUE
|
UPDATE
|
USER
|
VALIDATE
|
VALUES
|
VARCHAR
|
VARCHAR2
|
VIEW
|
WHENEVER
|
WHERE
|
WITH
|
|
|