Oracle SQL 开发人员 ORA-00904 on alter table
Oracle SQL Developer ORA-00904 on alter table
我目前正在尝试更改 Oracle SQL Developer 中现有的 Oracle SQL table。
我想向现有 table 添加一个字段。
该字段不应为空,键入 NVARCHAR(256) 并存储一个简单的字符串 - 不需要外键。
我的 SQL 看起来像这样:
alter table MYTABLE
add column FRUITS NVARCHAR2(256) not null default 'apple';
当我 运行 这个 sql 语句时,我得到以下错误:
Error starting at line : 1 in command -
alter table MYTABLE
add column FRUITS NVARCHAR2(256) not null default 'apple'
Error report -
ORA-00904: : invalid identifier
00904. 00000 - "%s: invalid identifier"
*Cause:
*Action:
你知道如何解决这个错误吗?
错误的语法以及错误的约束顺序。
应该是
alter table MYTABLE
add FRUITS NVARCHAR2(256) default 'apple' not null;
示范:
SQL> create table mytable (id number);
Table created.
SQL> alter table MYTABLE
2 add column FRUITS NVARCHAR2(256) not null default 'apple';
add column FRUITS NVARCHAR2(256) not null default 'apple'
*
ERROR at line 2:
ORA-00904: : invalid identifier
SQL> alter table MYTABLE
2 add FRUITS NVARCHAR2(256) not null default 'apple';
add FRUITS NVARCHAR2(256) not null default 'apple'
*
ERROR at line 2:
ORA-30649: missing DIRECTORY keyword
SQL> alter table MYTABLE
2 add FRUITS NVARCHAR2(256) default 'apple' not null;
Table altered.
SQL>
现在语法正确了。添加后删除 列 并在 'apple'
后放置 not null
alter table MYTABLE
add FRUITS NVARCHAR2(256) default 'apple' not null;
我目前正在尝试更改 Oracle SQL Developer 中现有的 Oracle SQL table。
我想向现有 table 添加一个字段。 该字段不应为空,键入 NVARCHAR(256) 并存储一个简单的字符串 - 不需要外键。
我的 SQL 看起来像这样:
alter table MYTABLE
add column FRUITS NVARCHAR2(256) not null default 'apple';
当我 运行 这个 sql 语句时,我得到以下错误:
Error starting at line : 1 in command -
alter table MYTABLE
add column FRUITS NVARCHAR2(256) not null default 'apple'
Error report -
ORA-00904: : invalid identifier
00904. 00000 - "%s: invalid identifier"
*Cause:
*Action:
你知道如何解决这个错误吗?
错误的语法以及错误的约束顺序。
应该是
alter table MYTABLE
add FRUITS NVARCHAR2(256) default 'apple' not null;
示范:
SQL> create table mytable (id number);
Table created.
SQL> alter table MYTABLE
2 add column FRUITS NVARCHAR2(256) not null default 'apple';
add column FRUITS NVARCHAR2(256) not null default 'apple'
*
ERROR at line 2:
ORA-00904: : invalid identifier
SQL> alter table MYTABLE
2 add FRUITS NVARCHAR2(256) not null default 'apple';
add FRUITS NVARCHAR2(256) not null default 'apple'
*
ERROR at line 2:
ORA-30649: missing DIRECTORY keyword
SQL> alter table MYTABLE
2 add FRUITS NVARCHAR2(256) default 'apple' not null;
Table altered.
SQL>
现在语法正确了。添加后删除 列 并在 'apple'
后放置 not nullalter table MYTABLE
add FRUITS NVARCHAR2(256) default 'apple' not null;