【发布时间】:2012-02-08 02:17:58
【问题描述】:
我目前正在为一个学校项目编写一个数据库。我在 xampp 上使用 MySQL 并尝试将此表添加到我的数据库中。我的 SQL 语法仍然不是 100%,这里有一个错误,我似乎无法弄清楚:
CREATE TABLE photoDB(
U_id INT UNSIGNED NOT NULL FOREIGN KEY REFERENCES userDB(U_id),
P_id INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY,
C_id INT UNSIGNED NOT NULL FOREIGN KEY REFERENCES table_comments(C_id),
PhotoName VARCHAR(50),
Description TEXT NOT NULL,
File VARCHAR,
Views BIGINT UNSIGNED,
Rep DOUBLE (100000, 2),
UploadDate DATETIME,
EditDate DATETIME,
EditVersion INT UNSIGNED,
LatestEditVerion INT UNSIGNED
);
我尝试创建的所有表都有相同的问题。
这是错误信息:
#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 'FOREIGN KEY REFERENCES userDB(U_id), P_id INT UNSIGNED NOT NULL AUTO_INCREMENT ' at line 2
提前致谢
【问题讨论】:
-
这个错误可能是由于还没有创建所需的表 userDB 和 table_cmets 造成的吗? Mysql 是否要求被引用的表已经存在,引用表才能有语句?