MySQL与SQL的触发器的不同写法

触发器作用:
当在SQL、MySQL数据库中一张表中插入一条记录时,触动触发器,使同一数据库的另一张表插入相同记录。 
在学习的过程中,发现两者的写法是不同的。 
1、在SQL中建立两张表sql_test,sql_tem。(两张表的字段是一样的)

代码如下:

create table sql_test
(
id int,
name varchar(16)
)

create table sql_tem
(
id int,
name varchar(16)
)

代码如下:

/*SQL的触发器写法*/
create trigger insert_sql_test on sql_test
for insert
as
insert into sql_tem
select * from inserted
go
/*SQL的触发器写法*/

2、在MySQL中建立两张表mysql_test,mysql_tem。(两张表的字段是一样的,建表语句与上面的类似) 
代码如下:

/*MySQL的触发器写法*/
delimiter//
create trigger insert_mysql_test before insert on test
for each row
begin
insert into tem set id = new id , name = new name;
/*new后面的id,name是test表的字段名*/
end
//

MySQL与SQL的触发器的不同写法

时间: 2024-10-06 00:12:52

MySQL与SQL的触发器的不同写法的相关文章

mysql如何临时禁用触发器

mysql如何临时禁用触发器 起因 ??Mysql的触发器,在触发控制上,只能按照对数据的操作方式(Insert,Update,Delete)以及操作前后(before,after)进行触发控制.但是如果碰到以下需求又该如何:对于A表的Insert语句,只有符合某些条件的数据触发Insert触发器. 自己当初条件反射的写法 ??在对应的触发器语句中,增加条件判断的逻辑.举个栗子: 有个用户信息表user,有个通讯录表addressbook,两张表表结构类似,业务需求上某些数据需要做数据实时同步,

MySQL之试图、触发器、事务、存储过程、函数

阅读目录 一.视图 二.触发器 三.事务 四.存储过程 五.函数 六.流程控制 一.视图 视图是一个虚拟表(非真实存在),是跑到内存中的表,真实表是硬盘上的表,怎么就得到了虚拟表,就是你查询的结果,只不过之前我们查询出来的虚拟表,从内存中取出来显示在屏幕上,内存中就没有了这些表的数据,但是下次我要是想用这个虚拟表呢,没办法,只能重新查一次,每次都要重新查.其本质是[根据SQL语句获取动态的数据集,并为其命名],用户使用时只需使用[名称]即可获取结果集,可以将该结果集当做表来使用.如果我们想查询一

MySQL之视图、触发器、事务、存储过程、函数 流程控制

阅读目录 一 视图 二 触发器 三 事务 四 存储过程 五 函数 六 流程控制 MySQL这个软件想将数据处理的所有事情,能够在mysql这个层面上全部都做了,也就是说它想要完成一件事,以后想开发的人,例如想写python程序的人,你就专门的写你自己的python程序,以后凡是关于数据的增删改查,全部都在MySQL里面完成,也就是说它想实现一个数据处理与应用程序的一个完全的解耦和状态,比如说,如果我是个应用程序员,我想要查询数据,我不需要自己写sql语句,只需要调用mysql封装好的一些功能,直

mysql 自定义存储过程和触发器

mysql 自定义存储过程和触发器 --存储过程示范 DROP PROCEDURE IF EXISTS PRO_TEST; CREATE PROCEDURE PRO_TEST(IN NUM_IN INT,OUT NUM_OUT INT,INOUT NUM_INOUT) BEGIN //DO ANYTHING YOU WANT END; 参数解释: in : 就是输入参数,输入参数是会被传入到存储过程作为参数使用,改变它的值将不会改变其原本值,相当于是值传递 out: 此为输出参数,在存储过程中为

基本sql语句--触发器

触发器(trigger) 作用:监视某种情况并触发某种操作. 触发器定义:进行数据库应用软件的开发时,我们有时会碰到表中的某些数据改变,希望同时引起其他相关数据的改变的需求,利用触发器就能满足这样的需求. 它能在表中的某些特定数据变化时自动完成某些查询.运用触发器不仅可以简化程序,而且可以增加程序的灵活性. 触发器是一类特殊的事务:可以监视某种数据操作(insert/update/delete),并触发相关操作(insert/update/delete ). 触发器应用场合: 1.当向一张表中添

警惕 MySql 更新 sql 的 WHERE 从句中的 IN() 子查询时出现的性能陷阱

警惕 MySql 更新 sql 的 WHERE 从句中的 IN() 子查询时出现的性能陷阱 以下文章来源:https://blog.csdn.net/defonds/article/details/46745143 mer_stage 表有 216423 条记录,DDL:CREATE TABLE `mer_stage` ( `STAGE_ID` int(11) NOT NULL AUTO_INCREMENT, `MER_ID` int(11) NOT NULL, `MER_CODE` varch

Mysql 之 视图,触发器,存储过程,函数,事物,数据库锁,数据库备份

Mysql 之 视图,触发器,存储过程,函数,事物,数据库锁,数据库备份 阅读目录 一:视图 二:触发器 三:存储过程 四:函数 五:事物 六:数据库锁 七:数据库备份 一:视图 视图:是一个虚拟表,其内容由查询定义.同真实的表一样,视图包含一系列带有名称的列和行数据 视图有如下特点; 1. 视图的列可以来自不同的表,是表的抽象和逻辑意义上建立的新关系. 2. 视图是由基本表(实表)产生的表(虚表). 3. 视图的建立和删除不影响基本表. 4. 对视图内容的更新(添加.删除和修改)直接影响基本表

mysql之视图,触发器,事务等。。。

mysql之视图,触发器,事务等... 一.视图 视图是一个虚拟表(非真实存在),其本质是[根据SQL语句获取动态的数据集,并为其命名],用户使用时只需使用[名称]即可获取结果集,可以将该结果集当做表来使用. 使用视图我们可以把查询过程中的临时表摘出来,用视图去实现,这样以后再想操作该临时表的数据时就无需重写复杂的sql了,直接去视图中查找即可,但视图有明显地效率问题,并且视图是存放在数据库中的,如果我们程序中使用的sql过分依赖数据库中的视图,即强耦合,那就意味着扩展sql极为不便,因此并不推

Mysql常用sql语句(二)- 操作数据表

21篇测试必备的Mysql常用sql语句,每天敲一篇,每次敲三遍,每月一循环,全都可记住!! https://www.cnblogs.com/poloyy/category/1683347.html 需要注意,创建数据库和创建表的语句博文都在前面哦 整个系列都是相互关联的哈,需要用到前面创建的数据库和表哦(系列博文第一篇和第二篇) 前言 针对数据表的操作语句叫做数据定义语言(DDL)   数据表有哪些操作? 创建数据表 查看表结构 查看数据表的创建语句 复制数据表 修改数据表 删除数据表 简称“