我正在尝试使用primary和foriegn键引用在mysql中创建引用,但它没有显示 db 这是我的数据库的架构
[CREATE TABLE fname(
id INT PRIMARY KEY AUTO_INCREMENT,
fname VARCHAR(29))
CREATE TABLE parent(
p_id INT PRIMARY KEY AUTO_INCREMENT,
id INT,
FOREIGN KEY(id) REFERENCES fname(id)
)
答案 0 :(得分:0)
从我在评论中看到的删除答案,您希望在父中插入一个值,并在 fname 中自动提供该值。这不是外键工作的方式。外键只允许在 fname 中存在 parent 中已存在(意味着插入之前)的值。
如果这不是您想要的,请详细解释您的问题。
答案 1 :(得分:0)
CREATE TABLE fname(
id INT PRIMARY KEY AUTO_INCREMENT,
fname VARCHAR(29));
CREATE TABLE parent(
p_id INT PRIMARY KEY AUTO_INCREMENT,
id INT,
CONSTRAINT `fk11`
FOREIGN KEY (`id`)
REFERENCES `fname` (`id`)
);
参考:https://dev.mysql.com/doc/refman/5.5/en/create-table-foreign-keys.html
PS:虽然SO是一个人们准备提供帮助的社区,但在此处提问之前,最好先查看文档或进行简单的网络搜索。