从表A到表B的触发器ID

时间:2017-12-25 09:33:29

标签: mysql powershell phpmyadmin

我有两张表如下:

报告 reports

检查

check

表“报告”上的

ID列具有AI(启用自动增量并设置为主键)

表“检查”上的

ID列具有AI(自动增量禁用和索引)

以下是我在“检查”表下创建的外键约束:

外键 enter image description here

我需要完成的是:

  • 每当我运行我的Powershell查询以在表“Report”中插入新行时,我需要使用相同的ID来写入“Checks”表的ID列。

Powershell查询:

“INSERT INTO Checks(WiFi,打印机,记事本)价值('$ WiFi','$ Printers','$ NotepadPlus')”

  • 在这种情况下我应该在phpmyadmin中创建一个触发器吗?如果是这样,有人可以帮忙吗?

  • 我是否需要在上面的Powershell命令中指定ID?如果是的话怎么可以这样做?

提前谢谢你,

2 个答案:

答案 0 :(得分:0)

是的,您可以在PowerShell命令中指定ID。

我假设您正在使用Powershell命令插入Reports。要捕获生成的新ID,您可以使用$command.LastInsertedId,并在插入checks表时使用它。

希望它有所帮助。

答案 1 :(得分:0)

用于创建TRIGGER以将ID插入Checks表的SQL:

CREATE DEFINER = CURRENT_USER TRIGGER `dbname`.`trigger_name` AFTER INSERT ON `Report` FOR EACH ROW
BEGIN
insert into Checks (id) values (NEW.id)
END

但TRIGGER无法插入价值'$ WiFi','$ Printers','$ NotepadPlus'。您需要通过在PHP代码中更新与新插入的ID相关的行来设置这些值。