MySQL技巧之跨服务器数据查询:基础篇-更新语句如何写
MySQL技巧之跨服务器数据查询:基础篇-更新语句如何写
上一篇已经描述:借用微软的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
跨服务器的查询语句已经学会了,跨服务器的更新语句又该如何写呢?
更新会复杂一些,我摸着石头过河,你搭着我肩膀过河吧。
假设我想把安道尔的country_type 改为C
UPDATE OPENQUERY(My_ODBC_MYSQL,
’ SELECT country_code, country_name, country_type FROM country
WHERE country_code = ‘‘AD’’ ')
SET country_type = ‘C’
WHERE country_code = ‘AD’
注意:OPENQUERY函数内参数是不支持动态参数的。所以对于小表来说,其实就是把记录取过来更新。
’ SELECT country_code, country_name, country_type FROM country WHERE country_code = ‘‘AD’’ ’ 这部分应该包含主键及要修改的字段。
请记住以上套路,特别注意单引号的个数。这里为什么是二个单引号?
妙!高!实在是高!
加粉丝看
MySQL技巧系列之《未经证实的葵花宝典》:一篇可以当饭吃的MySQL文章,值得收藏
总结:借用微软的SQL Server + ODBC 即可实现MySQL跨服务器间的数据查询。使用UPDATE OPENQUERY(…),实现跨服务器间记录更新。