考虑‘MySQL如何去链接远程SQL’ 这个问题已经考虑了大半月了,这之前一直纠结于想找出类似于我做‘SQL 如何链接 远程MySQL’的那种直接的方法,找到一个合适的接口。
但努力了那么久,还是失败了,所以我想到另一个方法去实现相同的结果,当在MySQL中插入一条记录时,远程的SQL会插入一条相同的记录。
鉴于之前我已经做出了‘SQL 如何链接 远程MySQL’,
(相应文章地址:http://database.51cto.com/art/201008/221118.htm)
我用了两个触发器,一个存储过程,一个作业完成了相同的效果。
(我用一张图来阐述了我的做法)
- /*①的代码*/
- /*MySQL的触发器写法*/
- delimiter//
- create trigger insert_mysql_test before insert on Mysql_test
- for each row
- begin
- insert into Mysql_tem set tem_id = new test_id ,tem_name = new test_name;
- /*new后面的id,name是Mysql_test表的字段名*/
- end
- //
- /*MySQL的触发器写法*/
代码
- /*②的代码*/
- /*链接的存储过程*/
- use kk
- go
- create procedure select_x
- as
- insert into sql_tem(x_id,x_name) select * from openquery(GLB, 'select x_id,x_name from Mysql_tem')
- delete from sql_tem
- delete openquery(GLB, 'SELECT * FROM Mysql_tem')
- go
- /*链接的存储过程*/
- /*③的代码*/
- /*建立在sql_tem表上的触发器*/
- create trigger tr_insert_tem on sql_tem
- for insert
- as
- insert into sql_test
- select * from inserted
- go
- /*建立在tem表上的触发器*/
<补充>关于那个作业,我用的是SQL Server2005的可视化做的,它最重要的操作就是定时执行'exec select_x'这个操作。(执行存储过程)
加一个截图给大家看一下,同时在SQL 2000的企业管理器中也可以找到。
原文标题:MySQL 如何链接 远程SQL
链接:http://www.cnblogs.com/guolebin7/archive/2010/09/01/1815304.html
【编辑推荐】