mysql 怎么实现两表同步

怎么从a表写入数据到b表,当a表有新数据时 程序怎么自动检测到b表里面 最后实现数据同步

阅读 13.4k
4 个回答

@shizhz ,题主可以使用触发器。
trigger 的格式为:

create trigger trigger_name trigger_time trigger_event 
on tbl_name for each row 
trigger_stmt

以题主的需求举例:(这里假设 A 表的 idAidB 表的 idBid

create trigger new_trigger after insert 
on tableA for each row 
begin
  insert into tableB(Bid) values(new.Aid)
end

刚到家,这里给题主举个实例说明:
1.首先新建两张表:(tableatableb

请输入图片描述

请输入图片描述
分别拥有一个 id 字段 AidBid
接下来新建触发器 test_trigger

请输入图片描述

运行后可以看到:

请输入图片描述

新建后可以运行以下命令查看建好的触发器:

select * from information_schema.triggers

接下来我们测试效果,往 tablea 中插入数据并查看:

请输入图片描述
请输入图片描述

查看表 tableb
请输入图片描述

ok,触发器成功运行!:)
btw,尝试了好几次贴新建触发器的代码,但是编辑器一直卡住了,所以我截的图,希望题主能看得清楚。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进