文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>mysql下如何禁用触发器

mysql下如何禁用触发器

时间:2010-08-19  来源:909413335

MYSQL下如何禁用触发器。类似在SQL SERVER的alter table 表名 disable trigger 触发器名称。 查看MYSQL的ALTER TABLE语法,没有发现这样的功能。既然MYSQL自身不提供,我们就通过变通的办法来实现。   下面是网友提供的代码,重点在触发器的执行代码时,做一个判断,某个表是否存在,如果存在则继续执行,也可以用某个系统变量来做开关。  

DROP TABLE IF EXISTS test ;
CREATE TABLE test (iss int);


delimiter $$
CREATE TRIGGER trIn
AFTER INSERT ON test
FOR each ROW
BEGIN
    IF (select count(*) from information_schema.tables where table_name='xxx')=0
    THEN
    SET @n=1; ----你要做的操作
    ELSE
    SET @n=2; ----这里你可以随意写个东西 反正就是不触发本来的操作
    END IF ;
END;
$$

delimiter ;


--test

mysql> set @N=0;
Query OK, 0 rows affected (0.00 sec)

mysql> create table xxx(a int);
Query OK, 0 rows affected (0.01 sec)

mysql> insert test select 1;
Query OK, 1 row affected (0.04 sec)
Records: 1 Duplicates: 0 Warnings: 0

mysql> select @n;
+------+
| @n |
+------+
| 2 |
+------+
1 row in set (0.00 sec)


相关阅读 更多 +
排行榜 更多 +
辰域智控app

辰域智控app

系统工具 下载
网医联盟app

网医联盟app

运动健身 下载
汇丰汇选App

汇丰汇选App

金融理财 下载