2015-04-22 35 views
-1

爲什麼在執行此SQL時會收到無效標識符?我完全被難住了。這個簡單的代碼有什麼問題。我得到的錯誤是爲什麼在執行此SQL時會收到無效標識符?

ORA-00904:無效的標識符

CREATE TABLE themepark 
(
apples NUMBER(10) PRIMARY KEY, 
bananas VARCHAR2(20), NOT NULL, 
cherries VARCHAR2(10), NOT NULL, 
eggs VARCHAR2(10) NOT NULL 
); 

我使用Oracle數據庫使用SQL Fiddle的人。

另一方面,下面的代碼工作。

CREATE TABLE ticket 
(
red1 VARCHAR2(15) PRIMARY KEY, 
orange NUMBER(10) NOT NULL, 
yellow NUMBER(4,2) NOT NULL, 
green VARCHAR2(2) NOT NULL, 
blue VARCHAR2(15) NOT NULL 
); 

是什麼讓第一個代碼(不起作用),任何不同於第二個代碼呢?

+4

你不想VARCHAR2後'逗號(<>)'和'之前,在你要麼'bananas'或'cherries'列的定義不NULL'。 –

+1

以JustinCave的建議爲例的工作示例:http://sqlfiddle.com/#!4/27e0c7 – bernie

+0

我現在明白了,謝謝,但是我應該刪除這個問題,因爲我懷疑這對其他人有用。 – desbest

回答

5

在腳本中有逗號。

CREATE TABLE themepark 
(
apples NUMBER(10) PRIMARY KEY, 
bananas VARCHAR2(20) NOT NULL, 
cherries VARCHAR2(10) NOT NULL, 
eggs VARCHAR2(10) NOT NULL 
); 
相關問題