【发布时间】:2011-12-22 04:05:35
【问题描述】:
CREATE TABLE titlexplan(
id INTEGER NOT NULL,
title_id INTEGER NOT NULL ,
plan_id INTEGER NOT NULL ,
start_date DATETIME NOT NULL,
end_date DATETIME
CHECK (start_date < end_date),
PRIMARY KEY(id),
INDEX (title_id),
FOREIGN KEY (title_id)
REFERENCES title(id)
INDEX (plan_id),
FOREIGN KEY (plan_id)
REFERENCES plan(id)
);
这是我正在使用的代码,但出现语法错误:#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'INDEX (plan_id), FOREIGN KEY (plan_id) REFERENCES plan(id) )' at line 10。
我正在尝试在其他表中的相应 ID 更新时更新 title_id 和 plan_id,并且我正在尝试跟踪更改。
我无法找到一个明确的指南来说明如何执行此操作,这些查询部分有效,但不是全部有效。我认为我不需要此表中的主键,但当我不使用主键时会收到警告:“Warning, table contains no primary key”。所以,我只是添加了“id”列。不过,我不认为它实际上是需要的。
请指教。
谢谢。
【问题讨论】:
-
你得到的错误是因为一个 mssing 逗号:
REFERENCES title(id) ,
标签: mysql database-design foreign-keys timestamp primary-key