0
테이블을 만든 후에 외래 키를 추가해야합니다. HSQLDB. 테이블을 만든 후 외래 키를 추가하는 동안 오류가 발생했습니다.
나는이 요청을 사용java.sql.SQLSyntaxErrorException: user lacks privilege or object not found: PUBLIC.LESSONS
내가 그것을 어떻게 해결할 수 : 오류가 실행 된 후 ALTER TABLE lessons ADD FOREIGN KEY (id_teacher) REFERENCES teachers (id);
, 내가 얻을?
쿼리를 보내기 : Statement statement = connection.createStatement(); statement.execute(request);
전체 쿼리 : 당신은 하나 개의 문장으로 함께 전체 스크립트를 보내는 때문에 오류가 반환됩니다
CREATE TABLE lessons (
id int IDENTITY,
lesson_name varchar(50) NOT NULL,
id_teacher int NOT NULL,
id_group int NOT NULL
);
CREATE TABLE teachers (
id int IDENTITY,
teacher_name varchar(50) NOT NULL,
id_lesson int NOT NULL,
id_group int NOT NULL
);
CREATE TABLE groups (
id int IDENTITY,
group_name varchar(50) NOT NULL,
id_lesson int NOT NULL,
id_curator int NOT NULL
);
ALTER TABLE lessons
ADD FOREIGN KEY (id_teacher) REFERENCES teachers (id)
ADD FOREIGN KEY (id_group) REFERENCES groups (id);
ALTER TABLE teachers
ADD FOREIGN KEY (id_lesson) REFERENCES lessons (id)
ADD FOREIGN KEY (id_group) REFERENCES groups (id);
ALTER TABLE groups
ADD FOREIGN KEY (id_lesson) REFERENCES lessons (id)
ADD FOREIGN KEY (id_curator) REFERENCES teachers (id);
하나의'alter table'과 함께 하나 이상의 foreign key를 추가 할 수 없습니다. 각각의 foreign key에 대해 하나의'alter table '을 사용해야합니다. (실제로는 다른 에러 메시지를 야기 할 것입니다) –