我有两个表,考虑表1和表2。我需要在插入 table1 后执行触发器。
触发器必须执行一些操作,例如使用 select 查询从其他两个表中检索数据(它检索多行),对检索到的数据进行一些计算,然后需要将其作为单行插入到 table2 中。
我认为不可能在触发器中执行这些操作,因此我决定从该触发器调用一个 php 文件来完成所有这些操作。但有些人说从触发器调用 php 实际上并不好,而且存在一些安全风险。
最佳答案
一个简单的例子会帮助你。
$sql="INSERT INTO `table1` (FirstName, LastName, Age)
VALUES ('$firstname', '$lastname', '$age')";
$result = mysql_query($sql) ;
if($result)
{
// Record successfully inserted , place your code which needs to be executed after successful insertion
}
else
{
// Insertion failed
}
我假设您会使用 mysqli 而不是 mysql,因为从 PHP 5.5.0 开始,mysql_query
已被弃用,但这只是一个帮助您理解逻辑的示例。
关于php - 需要替代解决方案,而不是从触发器调用 PHP 代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24422328/