栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

如何创建触发器以将数据插入另一台服务器上的数据库

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

如何创建触发器以将数据插入另一台服务器上的数据库

为了能够继续进行此操作,必须首先确保两个服务器具有相同的配置。为了完成您想做的事情,可以在两个服务器上结合使用FEDERATED存储引擎和触发器,以允许每个服务器更新另一个服务器的数据库。

您需要创建与其他服务器上的用户表联合的本地表。因此,如果一条记录已经存在于另一台服务器上,但在此位置不存在,我们希望另一台服务器上的插入操作抛出一个错误,阻止我们在此处创建记录…而不是在此处创建记录冲突的ID;

CREATE TABLE remote_user (  `ID` int(11) NOT NULL AUTO_INCREMENT,  `name` varchar(50) NOT NULL,  `age` smallint(6) NOT NULL,  PRIMARY KEY (`ID`)) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8ConNECTION='mysql://username:pass@the_other_host:port/schema/user';

然后,您可以创建触发器;

DELIMITER $$CREATE TRIGGER user_bi BEFORE INSERT ON user FOR EACH ROWBEGIN  INSERT INTO remote_user (ID,name, age) VALUES (NEW.ID,NEW.name, NEW.Age);END $$CREATE TRIGGER user_bu BEFORE UPDATe ON user FOR EACH ROWBEGIN  UPDATE remote_user      SET ID= NEW.ID,         name= NEW.name         age = NEW.Age   WHERe ID = OLD.ID;END $$CREATE TRIGGER user_bd BEFORE DELETE ON user FOR EACH ROWBEGIN   DELETE FROM remote_user   WHERe ID= OLD.ID;END $$DELIMITER ;


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/456319.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号