选择性的触发器 -- 我现在想有这样一个SQL脚本自动执行 -- 例如:-- 如果这个triggerX存在,不执行任何操作-- ELSE -- 如果这个触发器不存在,就创建这个触发器 create trigger triggerX.... 跪求... 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 没有这种SQL脚本,只能用存储过程来实现。可以从系统表中判断是否有这个 TRIGGER, 但无法在SQL语句中实现。 在SP中似乎也不能动态创建TRIGGER(5.1.12) 通过information_schema.TRIGGERS这个表判断吧 换个思路不用 SQL脚本,直接用操作系统脚本。 1:把TRIGGER的脚本写好,放到C:\A.TXT里面2:在存储过程里面通过information_schema.TRIGGERS判断是否存在,如果不存在,那么就SOURCE C:\A.TXT注意delimiter // 转换一下提交符。 在SP里面能执行source 吗? 我记得不行的吧 在存储过程里进行条件判断以后,直接create trigger 这种方法不行吧在存储过程里面不能直接create trigger。。吧。。 SP中不能SOURCE,写个系统脚本J:\NEWMYSQL\bin>mysql -u root -p123L -e "SELECT '1' INTO OUTFILE 'r:/temp/123.txt'from information_schema.TRIGGERS where trigger_name='newproduct'";通过 判断r:/temp/123.txt是否存在创建TRIGGER 请各位高手推荐分布式数据库接入层源码 请问为什么我查询这个执行为空呢? 关于老版本mysql 3.23.52问题 产品库三层设计,请大佬们指点下 哪儿有关于MYSQL5.0.23中文版CHM文件的下载? SQL问题请教,怎样在GROUP BY之前对数据进行ORDER BY? 如何设置mysql登陆密码? 关于MYSQL的OLE DB驱动问题 急,在线等。SQL里为一个日期增加了一段时间 为什么显示的是年月日时分秒。能让他只显示年月日嘛 mysql 可以把 存储过程(结果为一个集合)当做一个表来查么?结果集当赋值给一个变量? 查询某个字段值的问题 crontab调用mysql备份功能的作用?
可以从系统表中判断是否有这个 TRIGGER, 但无法在SQL语句中实现。
information_schema.TRIGGERS
这个表判断吧
2:在存储过程里面通过information_schema.TRIGGERS判断是否存在,如果不存在,那么就SOURCE C:\A.TXT
注意delimiter // 转换一下提交符。
在SP里面能执行source 吗? 我记得不行的吧
J:\NEWMYSQL\bin>mysql -u root -p123L -e "SELECT '1' INTO OUTFILE 'r:/temp/123.tx
t'from information_schema.TRIGGERS where trigger_name='newproduct'";
通过 判断r:/temp/123.txt是否存在创建TRIGGER