DELIMITER $$
CREATE TRIGGER trigger_name AFTER INSERT ON table_name FOR EACH ROW
BEGIN
DECLARE i INT DEFAULT 1;
WHILE i
上述语法中,CREATE TRIGGER是创建触发器的关键字,后面的trigger_name是触发器的名称。AFTER INSERT表示只有在向指定表中插入数据时才会触发该触发器。table_name是指定的表名,而FOR EACH ROW表示每一行数据都会触发该触发器。
BEGIN和END表示触发器的开始和结束,其中包含多条SQL语句。DECLARE是声明变量的关键字,i表示一个整形变量,初始值为1。WHILE表示执行循环语句,当i小于等于10时,执行循环体内的SQL语句。INSERT INTO表示向指定表中插入数据,column1、column2、column3是表中的列名,NEW.column1、NEW.column2是指向新插入数据的列。
在循环体中,使用SET语句将i自增1,以便循环执行。最后,END WHILE表示循环体结束。
因此,上述代码就是在向指定表中插入10条数据,其中column1和column2的值使用新插入数据的值,而column3的值为1到10之间的整数。