1072“表中不存在 user_id。”有办法解决吗?

问题描述 投票:0回答:1

所以我第一次创建数据库但我的 user_id 不存在?我怎样才能解决这个问题?我的代码是:

CREATE TABLE comments (
    id INT(11) NOT NULL AUTO_INCREMENT,
    username VARCHAR(30),
    comment_text TEXT NOT NULL,
    created_at DATETIME NOT NULL DEFAULT CURRENT_TIME,
    users_id INT(11) NOT NULL,
    PRIMARY KEY (user_id),
    FOREIGN KEY (user_id) REFERENCES users (id) ON DELETE SET NULL
);

创建评论表但user_id不存在。

php phpmyadmin xampp
1个回答
0
投票

问题很少

  • 主键应该是 id 来引用评论 id
  • 使用 CURRENT_TIMESTAMP 而不是 CURRENT_TIME 来保持数据与时间的关系
  • 创建关系时users_id不能为NOT NULL
  • 在多对一关系中,可能存在拼写错误 users_id 而不是 user_id
  • 在这种情况下,您可能指的是 CASCADE 而不是关系上的 SET NULL 如果用户将从用户表中删除,它将删除该用户的所有评论
CREATE TABLE comments (
    id INT(11) NOT NULL AUTO_INCREMENT,
    username VARCHAR(30),
    comment_text TEXT NOT NULL,
    created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
    user_id INT(11),
    PRIMARY KEY (id),
    FOREIGN KEY (user_id) REFERENCES users (id) ON DELETE CASCADE
);
最新问题
© www.soinside.com 2019 - 2024. All rights reserved.