2016-02-03 61 views
1

我創建一個表,我輸入以下命令:SQL Oracle錯誤:ORA-00904

SQL> create table accident(report_number integer primary key, 
    2 date varchar(20), 
    3 location varchar(20)); 

我得到這個錯誤:

date varchar(20), 
* 
ERROR at line 2: 
ORA-00904: : invalid identifier 

誰能告訴我哪裏出錯以及如何糾正它?

+0

有一個類型的名爲「日期」一欄'VARCHAR'聞起來像壞deisgn - 應該不是寧可類型'DATE'的? –

+0

請考慮使用'varchar2'而不是'varchar',這是[棄用](https://docs.oracle.com/cd/A91202_01/901_doc/server.901/a90120/ch4_dep.htm#10006) –

回答

1

DATE是保留字,不能用作列名。

0

Date是一個保留字,使用它的列名,配額「列名」

前圍繞着它:使用quoats時

create table abcd(
"date" date 
); 

insert into abcd values (sysdate); 

select "date" from abcd; 

但需要注意的是,列名將區分大小寫

ex:

select "Date" from abcd將導致「日期」:無效的標識符