mysql。什么是触发器。触发器的使用时机。使用触发器的好处。
入库,和出库操作是否需要用到了触发器功能,如果没有用的话,请问用什么方式可以实现。
楼主你所说的入库和出库是不是插入数据和删除数据呀!
其实使用触发器可以说简化了很多代码吧!比如说用Java操作a、b两个表,现在我删除a表中的一条数据,然后在b表中插入一条数据,这在Java中实现需要操作两条sql语句,但是使用触发器,那就是一个自动的过程,只需删除a表中的一条数据,b表中就会自动插入一条数据,在Java中实现只需操作一条sql语句即可。
触发器就是个能够触发函数执行的机构,英文叫trigger,扳机的意思
有的时候触发器是必要的。比如使用ODBC的方式连接数据库,程序直接绑定了数据库的每个表结构,你无法直接拼接sql语句,所以每次插入数据都会连主键列一起插入。可是主键是不能重复的,正常应该采用自增,并且插入时不要带主键字段。如果应用程序插入时指定了主键字段,那就必须用触发器在插入前改变sql语句,要么直接删除主键字段,要么把它改成一个新的值,一个不与原来数据一致的值。
当然你也可以用触发器去触发一个复杂的存储过程执行,比如一个表插入数据,就把数据自动同步到另一个备份库,如果同步失败,就要连当前插入的数据一起回滚,以保证数据的一致。
至于什么入库出库的,那是业务层面的事情,跟你数据库里面到底用了什么技术无关。
触发器是当你执行某个命令时,系统自动连带执行的另一个或一组命令所构成的一个程序过程。触发器只是为了让程序代码更简单的一种方式,不用触发器一样可以实现同样的逻辑,就是相同的代码要写得到处都是了。
你说的入库出库,与触发器没有任何关系,直接写对应入库和出库的业务逻辑代码就是了