php - Mysql将一个表中的主键添加到另外两个表中

标签 php mysql primary-key

我有三个表(表 A、表 B、表 C)。

我想将“表A”中的主键添加到“表B、C”的列中,并使用一个提交按钮。

表 B、C 拥有主键。

**|table A|**
|primary key|Column 1|Column2|
|    AI     |  test  | test  |
------------------------------

**|table B|**
|Primary key|           Column 1         |Column 2|
|    AI     |Add Primary key from table A|  test  |
----------------------------------------------------

**|table C|**
|Primary key|           Column 1         |Column 2|
|   AI      |Add Primary key from table A|  test  |

如您所见,我希望在表 B 和 C 的第 1 列中添加表 A 中的主键。这是我使用的 php 代码:

$sql = "INSERT INTO `table A` (Column 1, Column 2)VALUES(test, test')";
$sql_B = "INSERT INTO `table B` (Column 1, Column 2)VALUES(LAST_INSERT_ID(), test)";
$sql_C = "INSERT INTO `table C` (Column 1, Column 2)VALUES(LAST_INSERT_ID(), test)";

问题是,$sql 有效,$sql_B 有效(从表 A 中的先前 INSERT 中获取 LAST_INSERT_ID()),但第三个查询从表 B 中获取 LAST_INSERT_ID(),这是正常的,但不是我想要的。有没有办法在变量中分配 LAST_INSERT_ID() 并在 sql 查询中添加此变量。

任何意见都可以。

最佳答案

您可以在最后一个表中尝试这样的操作:

$sql_C = "INSERT INTO `table C` (Column 1, Column 2)VALUES((SELECT Primary key FROM `table A`), test)";

关于php - Mysql将一个表中的主键添加到另外两个表中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49170267/

相关文章:

php - 在 PHP 中使用 SELECT 仅显示单行中的一个值的最安全、最正确的解决方案是什么?

php - mPDF 文档自动高度(POS 打印机)

php - MySQL通知: Undefined index: How to resolve

mysql - 如果我们有 2 个唯一列,我们应该选择哪一列作为主键

php - 在外部使用 WooCommerce 网关

php - MongoDB查询日期

php - PDO fetchall() 性能注意事项?

mysql - 将数据 GridView 行添加到 vb.net 中的 sql 表

ruby-on-rails - rails3 bigint主键

sql-server - 主要关键零部件 list