mysql - 如何在 phpmyadmin 中创建触发器

标签 mysql triggers

如何在 phpmyadmin 中使用带有 join 和 if...else 条件的触发器?

这是我的触发器:

DROP TRIGGER IF EXISTS `visit`;
CREATE DEFINER=`root`@`localhost` TRIGGER `visit` 
AFTER INSERT ON `daily_call_reports` 
FOR EACH ROW
    Update dealers d 
    JOIN daily_call_reports dcr
              ON d.dealer_id = dcr.client_id

         IF d.visit  IS NULL THEN 
                SET d.visit  = 1

          else  
                SET d.visit  = visit+1

          WHERE  dcr.client_id = NEW.client_id

但是当我单击“开始”按钮时,它显示此错误:

MySQL said: #1064 - You have an error in your SQL syntax;
check the manual that corresponds to your MySQL server version 
for the right  syntax to use near 'IF d.visit IS NULL THEN SET d.visit = 1 
els' at line 5

最佳答案

试试这个(语法)

DELIMITER $$

CREATE TRIGGER trigger_name after insert ON `table1` FOR EACH ROW BEGIN  INSERT  INTO `table2` (column1,column2) VALUES (NEW.column1,NEW.cllumn2);

END $$

 DELIMITER ;

关于mysql - 如何在 phpmyadmin 中创建触发器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32580551/

相关文章:

php - 如何从 php 脚本增加一个 sql 数据库

mysql - ubuntu 中 Django mysql 错误

mysql - #1248 - 每个派生表都必须有自己的别名

Mysql-获取同一个表中行的交集

mysql - 如何在触发器中使用变量作为列名

mysql - 定义 MYSQL 触发器的语法错误

MySQL 触发器——未插入正确的值

mysql - 正在再次发送设计确认邮件

php - 三个mysql触发器

sql - 触发函数内基于 NEW.id 的动态 SUM