我想在sqlite3中创建一堆表,并且出现一个我无法修复的错误。对于用于外键的sqlite3的语法有些问题,但无法弄清楚。尝试创建外键的SQLite3语法错误
CREATE TABLE students (
id INTEGER PRIMARY KEY AUTOINCREMENT,
first_name VARCHAR(64),
last_name VARCHAR(64)
);
CREATE TABLE classes (
id INTEGER PRIMARY KEY AUTOINCREMENT,
class_name VARCHAR(64)
);
CREATE TABLE students_classes (
id INTEGER PRIMARY KEY AUTOINCREMENT,
students_id INTEGER,
classes_id INTEGER,
FOREIGN KEY (students_id) REFERENCES students(id),
FOREIGN KEY (classes_id) REFERENCES classes(id)
);
CREATE TABLE teachers (
id INTEGER PRIMARY KEY AUTOINCREMENT,
classes_id INTEGER,
first_name VARCHAR(64),
last_name VARCHAR(64),
FOREIGN KEY classes_id REFERENCES classes(id)
);
CREATE TABLE grades (
id INTEGER PRIMARY KEY AUTOINCREMENT,
students_id INTEGER,
grade_num INTEGER,
FOREIGN KEY students_id REFERENCES students(id)
);
Error: near "students_id": syntax error
'FOREIGN KEY(students_id)' - 用'('和')'尝试。 – 2014-09-30 16:27:27
它在sqlite3上 – xeroshogun 2014-09-30 16:33:17
@ PM77-1有答案。也许他们应该像这样添加它。 – paqogomez 2014-09-30 16:39:39