mysql - 通过更新外键来更新主键

标签 mysql

我有一个成员(member)表,如下:

成员表:

 Name              |          Handicap
 Joe Bloggs        |             18

史泰 bool 福德表:

  Player_name    |     Player Handicap    |   Score   |   Handicap Change
    Joe Bloggs   |            18          |     38    |         17

我现在想要使用“让分更改”值 (17) 更新“玩家让分”,但出现错误:

cannot update a child row.

玩家让分Stableford表中的外键。它引用成员(member)(障碍)

当我更新 Stableford 表中的 Player Handicap 字段时,我还希望更新我的成员(member)表中的 Handicap 字段。这可能吗?

最佳答案

你根本不想这样做。

这里是一个经典的非规范化。

将 Handicap 作为外键没有任何意义。只有将玩家自己作为外键才有意义。

您需要从 Stableford 表中删除 Handicap 字段,并通过成员(member)的姓名作为外键,通过联接从 Member 表中获取它,必要时。

不想想要在任何其他表中重复成员(member)的任何属性(除了他的键)。

关于mysql - 通过更新外键来更新主键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29623825/

相关文章:

php - 如何更新 3 个表列,而页面只有一列可见

php - MySQL和php连接错误

mysql - 使用生成的主键引用表

php - Mysql 获取具有特定顺序的日期之间的唯一记录

mysql - db.sync({alter :true}). then(); 在 sequelize node.js express app

Java CRC32 与 MySQL CRC32 不匹配

php - 如何从php中的mysql存储函数获取单个返回值

mysql - 如何以数组形式获取 mysql 结果

php - 尝试使用 php 设置可变长度下拉菜单并从 mysql 中提取值

mysql - 远程服务器 mysql v3 、 mysqldump v5