【发布时间】:2019-02-07 17:26:31
【问题描述】:
我有包含作者姓名和 author_id(主键)的作者表。另一个名为 books 的表也有作者姓名和 author_id(外键)。我已经在书表中手动插入了作者姓名的值。 现在,我想使用以下查询在 book 表中的 author id 中插入值:
insert INTO tblbooks (Au_id)
SELECT tblauthors.Au_id FROM tblauthors JOIN tblbooks ON
tblbooks.a_name=tblauthors.AuthorName;
但我收到一个错误:
1062 - 键 'PRIMARY' 的重复条目 ''
【问题讨论】:
-
有根据的猜测您是否忘记在
tblbooks表中的列具有PRIMARY KEY的位置添加AUTO_INCREMENT选项? ..如果那没有帮助或不是这样。我建议您提供示例数据和预期结果见Why should I provide an MCVE for what seems to me to be a very simple SQL query? -
在子表
books中复制列author_name指出了糟糕的设计。请从该表中删除该列。您已经引用了authors表。 -
感谢您的帮助....... :)
标签: mysql