触发器的SQL写法
触发器的SQL写法如下:
CREATE TRIGGER trigger_name {BEFORE | AFTER} {INSERT | UPDATE | DELETE} ON table_name FOR EACH ROW BEGIN -- 触发器的动作 END;
其中,trigger_name为触发器的名称,可以自定义; BEFORE或AFTER指定触发器在触发事件之前或之后执行; INSERT、UPDATE、DELETE指定触发器所针对的操作类型; table_name为触发器所在的表名; FOR EACH ROW表示每一行数据发生变化时都会触发触发器; BEGIN和END之间是触发器的具体动作,可以是一条或多条SQL语句。
例如,创建一个在每次插入新数据到"orders"表之前自动更新"order_count"字段的触发器:
CREATE TRIGGER update_order_count BEFORE INSERT ON orders FOR EACH ROW BEGIN SET NEW.order_count = (SELECT COUNT(*) FROM orders) + 1; END;
这个触发器会在每次插入新数据到"orders"表之前,通过查询表中已有的数据数量并加1,将结果更新到"order_count"字段中。
原文地址: https://www.cveoy.top/t/topic/i9Y7 著作权归作者所有。请勿转载和采集!