ORA-00911:截断表时出现无效字符错误

Ugu*_*tun 1 database oracle

我有一个名为_VERSION_HISTORY的表,我在截断此表时出现了ORA-00911错误.Oracle允许名称以下划线(_)开头,但在截断时会抛出错误.这是一个愚蠢的错误吗?

APC*_*APC 5

甲骨文不会允许数据库对象名称开始以下划线:

SQL> create table _T34 (col1 number);
create table _T34 (col1 number)
             *
ERROR at line 1:
ORA-00911: invalid character


SQL> 
Run Code Online (Sandbox Code Playgroud)

因此,在创建该表时必须使用双引号:

SQL> create table "_T34" (col1 number);

Table created.

SQL>
Run Code Online (Sandbox Code Playgroud)

完成后,一旦你引用该对象必须使用双引号?

SQL> truncate table "_T34";

Table truncated.

SQL> 
Run Code Online (Sandbox Code Playgroud)

这是"一个愚蠢的错误"吗?是的,但是你的唉(或任何决定使用双引号来规避Oracle命名约定的人). 了解更多.