福州网络营销网站,ppt模板免费素材,wordpress分页工具栏,深圳龙华区民治街道MySQL技巧之跨服务器数据查询#xff1a;高级篇-先调用A数据库的MySql存储过程再复制到B数据库的表中
基础篇已经描述#xff1a;借用微软的SQL Server ODBC 即可实现MySQL跨服务器间的数据查询。 而且还介绍了如何获得一个在MS SQL Server 可以连接指定实例的MySQL数据库的…MySQL技巧之跨服务器数据查询高级篇-先调用A数据库的MySql存储过程再复制到B数据库的表中
基础篇已经描述借用微软的SQL Server ODBC 即可实现MySQL跨服务器间的数据查询。 而且还介绍了如何获得一个在MS SQL Server 可以连接指定实例的MySQL数据库的连接名: MY_ODBC_MYSQL 以及用同样的方法做的另一个连接名 MY_ODBC_MYSQL2
还实现了第一次查询在MS SQL Server打开一个新查询输入以下脚本 SELECT Q.country_code, Q.country_name FROM OPENQUERY(MY_ODBC_MYSQL, ’ SELECT country_code, country_name FROM country WHERE Code ‘‘IR’’ ) AS Q
跨服务器的查询语句、更新语句、删除语句、插入语句都已经学会了但是我想做的处理实在太复杂在SQL Server 上写实在麻烦在A服务器上的MySQL库有还现成的存储过程如果我能远程命令A服务器执行一下存储过程处理好之后我直接查询就好了 怎么调用跨服务器的存储过程呢 我摸着石头过河你搭着我肩膀过河吧。
假如A服务器上的MySQL库有 pr_do_xxx() 这个存储过程它完成什么复杂统计我们就不管了。我关心如何调用上干货 EXEC(‘CALL pr_do_xxx()’) AT My_ODBC_MYSQL; – 这样调用A服务器上MySQL的存储过程
注意请记住以上套路pr_do_xxx 是一个存储过程没有参数有参数也行。My_ODBC_MYSQL 是我们一直在用的连接到A服务器上链接名。中间还有一个 AT 不要漏了哦。
– 假如存储过程处理过后数据存在country 表中。接着按上一篇的套路做就可以了此处重写一次。 – 插入语句 从A数据库复制到B数据库的表中假设My_ODBC_MYSQL连接A数据库My_ODBC_MYSQL2连接B数据库 DECLARE QryStr nvarchar(4000) – 查询脚本 SET QryStr ’ INSERT INTO OPENQUERY(My_ODBC_MYSQL2, ‘’ SELECT country_code, country_name FROM country LIMIT 0, 1’‘) SELECT Q.country_code, Q.country_name FROM OPENQUERY(My_ODBC_MYSQL, ‘’ SELECT cty.country_code, cty.country_name FROM country cty WHERE cty.country_code ‘’’‘’ ‘SA’ ‘’‘’‘’ ’ ‘’) AS Q ; PRINT QryStr; – 这是调试的技巧小本子抄下。
EXEC(QryStr); – 执行脚本的另一个写法 注意请记住以上套路特别注意单引号的个数。为什么加个动态参数沙特拼接就要用四个单引号呢基础篇有描述我摸着石头过河你搭着我肩膀过河吧。
妙高实在是高 加粉丝看 MySQL技巧系列之《未经证实的葵花宝典》一篇可以当饭吃的MySQL文章,值得收藏
总结借用微软的SQL Server ODBC 即可实现MySQL跨服务器间的数据查询。这里演示了调用存储过程的方法再使用 INSERT INTO OPENQUERY…实现跨服务器间复制(插入)记录轻松实现先从A数据库处理数据然后复制到B数据库的表中。