mysql 触发器介绍
2024-10-13 04:26:46
create trigger triggerName
after/before insert/update/delete on tableName
for each row --这句话在mysql是固定的
begin
sql语句;
end;
如下在插入之前自动生成座位号
DROP TRIGGER IF EXISTS `pxlb_zwh_insert`;
CREATE TRIGGER `pxlb_zwh_insert`
BEFORE INSERT ON `dj_pxlb`
FOR EACH ROW
begin
IF new.zwh IS NULL OR new.zwh < 1 THEN
SET new.zwh = (select IFNULL(max(t1.zwh),0)+1 from `dj_pxlb` as t1 where t1.ccbh=new.ccbh);
END IF;
end;
DROP TRIGGER IF EXISTS t_make_data;
CREATE TRIGGER t_make_data
BEFORE INSERT ON t_tab1
FOR EACH ROW
BEGIN
DECLARE number_rand BIGINT(20) DEFAULT 4000 ; --声明变量
SET number_rand = (SELECT CAST(RAND()*300+300 AS signed) AS rand);
SET new.number_rand = number_rand;
END;
最新文章
- Django Restful Framework (二): ModelSerializer
- H5项目常见问题汇总及解决方案(果断复制粘贴,不解释)
- SQLALchemy(连表)、paramiko
- UML类图归纳
- HDU 5685:2016";百度之星"; - 资格赛 Problem A
- js获取url参数 兼容某些带#url
- Android 手机技巧
- LLVM language 参考手册(译)(1)
- http://www.myexception.cn/program/767123.html
- XCode工程内多Targets
- 写了一个复杂的sql语句
- 作业五:RE 模块模拟计算器
- SQL Server使用sp_rename重命名约束注意事项
- tomcat注册服务
- Error creating bean with name
- mysql_索引
- PYTHON-流程控制之if/while/for
- day2_webservice接口怎么测-SoapUI
- C#图片文字识别
- python 爬虫--同花顺-使用代理