我有三个表(表 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/