gpt4 book ai didi

php - 使用迁移向表添加触发器 - Laravel 5.1

转载 作者:行者123 更新时间:2023-11-29 07:28:42 25 4
gpt4 key购买 nike

我看过这个问题的一些答案,但没有一个有效,而且没有一个适用于 5.1

这是我的迁移:

public function up()
{
DB::unprepared('
USE `widatdb`;
DELIMITER $$
CREATE TRIGGER `topics_AUPD` BEFORE UPDATE ON `topics` FOR EACH ROW
BEGIN
IF (NEW.abstract <> OLD.abstract)
THEN
SET NEW.got_updated = 1;
END IF;
END
');
}

如果我在触发器声明中引入语法错误,则在迁移过程中将显示其错误。但是现在,在运行 php artisan migrate (没有任何错误地完成)之后,触发器没有添加到表中。有什么想法吗?

谢谢:-)

最佳答案

这对我来说是这样的:

/**
* Run the migrations.
*
* @return void
*/
public function up()
{
DB::getPdo()->exec('
CREATE TRIGGER `users_BUPD` BEFORE UPDATE ON `users` FOR EACH ROW
BEGIN
IF (NEW.score <> OLD.score)
THEN
INSERT INTO `score_history` VALUES(NULL, OLD.id, OLD.score, CURRENT_TIMESTAMP);
END IF;
END
');
}

关于php - 使用迁移向表添加触发器 - Laravel 5.1,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33550864/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com