У меня есть следующий 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
Я не спустил вас вниз, но я думаю, что это хороший вопрос, поэтому я поддержал его. – april4181
Вы все еще получаете эту ошибку, если вы выполняете каждое заявление отдельно? Это может быть связано с тем, как он соответствует. – april4181