首页 > 电子期刊 > J > 计算机时代

关于MySQL数据库中触发器的学习探讨

读者(借书证号,用户名,密码,注册日期,姓名,借阅数量)例1 当从publiser表中更新数据时,希望向另两个表中写入数据,保存更新前后的信息。新建两张与publiser结构一样的表old_publiser与new_publisher。DELIMITER |CREATE TRIGGER tri_publisher_updateAFTER UPDATEON publisher FOR EACH ROW/*保存更新前的信息*/BEGININSERT INTO old_publisher(pub_id,pub_name,pub_tel,pub_web, pub_addr)VALUES(OLD.pub_id,OLD.pub_name,OLD.pub_tel,OLD.pub_web,OLD.pub_addr);/*保存更新后的信息*/INSERT INTO new_publisher(pub_id,pub_name,pub_tel,pub_web, pub_addr)VALUES(NEW.pub_id,NEW.pub_name,NEW.pub_tel,NEW.pub_web,NEW.pub_addr);END |DELIMITER;验证该触发器:UPDATE publisher SET pub_tel=’010-68326294’ WHERE pub_id='P00002';SELECT * FROM old_publisher;SELECT * FROM new_publisher;例2 借书触发器DELIMITER |CREATE TRIGGER tri_borrow_book_insertliAFTER INSERT ON borrow_bookFOR EACH ROW/*借书在borrow_book表插入新纪录时,自动更新读者表的已借数量*/BEGINUPDATE reader SET borrow_count=borrow_count+1WHERE reader_id=NEW.reader_id;END |DELIMITER;
<<上一页  下一页>>

首页 > 电子期刊 > J > 计算机时代

广州市越秀区图书馆版权所有。
联系电话:020-87673002

本站访问人数: