2
我有以下SQL我在我的本地HSQLDB 2.3.2數據庫運行:HSQLDB錯誤:意外的標記:外國
CREATE TABLE IF NOT EXISTS countries (
country_id INTEGER GENERATED BY DEFAULT AS IDENTITY (START WITH 1, INCREMENT BY 1) NOT NULL PRIMARY KEY,
country_version INTEGER NOT NULL,
country_name NVARCHAR(100) NOT NULL,
country_label NVARCHAR(100) NOT NULL,
country_description NVARCHAR(500) NOT NULL
country_code NVARCHAR(10) NOT NULL,
CONSTRAINT uc_countries UNIQUE (country_id, country_version, country_label, country_description, country_code)
);
CREATE TABLE IF NOT EXISTS states (
state_id INTEGER GENERATED BY DEFAULT AS IDENTITY (START WITH 1, INCREMENT BY 1) NOT NULL PRIMARY KEY,
state_version INTEGER NOT NULL
state_name NVARCHAR(100) NOT NULL,
state_label NVARCHAR(100) NOT NULL,
state_description NVARCHAR(500) NOT NULL,
country_id INT NOT NULL,
FOREIGN KEY (country_id) REFERENCES countries(country_id),
CONSTRAINT uc_states UNIQUE (state_id, state_version, state_label, state_description, country_id)
);
當我運行此我得到:
Error: unexpected token: FOREIGN
SQLState: 42581
ErrorCode: -5581
是什麼去這裏,我能做些什麼來解決它?
爲什麼沒有解釋的downvote?如果這是一個騙局,請給我看看這個問題!否則,這是一個[SSCCE](http://sscce.org/),顯示努力/研究,幷包含診斷/排除故障所需的一切。 – IAmYourFaja 2014-12-07 10:43:48
我沒有downvote你,但我認爲這是一個很好的問題,所以我upvoted它。 – april4181 2014-12-10 16:15:10
如果分別執行每個語句,是否還會出現此錯誤?這可能是由於它符合的方式。 – april4181 2014-12-10 16:19:44