Mysql 正确的命令没有结果。0行受影响的记录:0重复:0警告:0

Mysql 正确的命令没有结果。0行受影响的记录:0重复:0警告:0,mysql,lookup-tables,Mysql,Lookup Tables,我想向查找表添加数据 地点\借款人(身份\地点\借款人(PK)、身份\借款人(FK)、身份\地点(FK)) 从3个不同的表格: 借款人(id_借款人(PK)、姓名、姓氏) 位置(标识位置(PK)、街道、城镇) 所有协议(借款人姓名、借款人姓氏、街道、城镇、职业、电话) 我写了以下内容: INSERT INTO schema.locations_borrowers (id_borrower, id_location) SELECT borrowers.id_borrower, locati

我想向查找表添加数据

地点\借款人(身份\地点\借款人(PK)、身份\借款人(FK)、身份\地点(FK)) 从3个不同的表格:

  • 借款人(id_借款人(PK)、姓名、姓氏)
  • 位置(标识位置(PK)、街道、城镇)
  • 所有协议(借款人姓名、借款人姓氏、街道、城镇、职业、电话)
我写了以下内容:

 INSERT INTO schema.locations_borrowers (id_borrower, id_location)
 SELECT borrowers.id_borrower, locations.id_location FROM borrowers JOIN schema.all_proto
 ON borrowers.forename = all_proto.borrower_forename AND borrowers.surname = all_proto.borrower_surname 
 INNER JOIN locations ON locations.street = all_proto.street AND locations.town = all_proto.town;

命令运行,但没有返回结果。有什么想法吗?

是否尝试运行“选择并检查”返回行

编辑:

在我看来,数据库模式是错误的

表所有协议都需要有借贷者id,并且不需要为名称和借贷者姓氏重复借贷者id。 同样,如果创建表位置,则不需要表all_proto中的street和town字段。如果你不想建立关系,我更喜欢在所有协议中添加id和位置

所以我会创造

表all_协议(id_借款人、职业、电话、id_位置)

因此,您的选择将是

select id_borrowers,id_location from all_proto
我希望能帮上忙
再见

对不起,是的,那很有帮助。我现在才看了整篇文章!问题是all_proto是我的原始数据库,他们给了我,我正试图从中创建具有适当关系的新表。因此,您的意见是尝试将id_位置添加到all_proto,然后从中导出我需要的所有数据?是的,但这取决于您想要的表之间的关系。如果您知道将来任何借款人都可以有多个地点,那么您最好制作多对多关系表,并放置id\u借款人id\u地点