MSSQLServer 使用linkserver 操作mysql
通过使用SQLServer的链接服务器 linkserver,可以在SQLServer直接操作mysql数据库。 先看最终效果, mysql数据库中有表t1,如果建立了一个链接服务器:mysql1,指向这个数据库 SQLServer数据库中有t2表,那么可以直接在SQLServer中执行下面SQL 读本地表 select * from t2 读mysql表,远程过滤 SELECT * ?FROM ?OPENQUERY([mysql1],'select * from t1 where id=1') 读mysql表,本地过滤 SELECT * ?FROM ?OPENQUERY([mysql1],'select * from t1') where id=1本地与远程表关联 SELECT * ?FROM ?OPENQUERY([mysql1],'select * from t1 ') t1,t2 where t1.id=t2.id 简单说,可以将OPENQUERY看作一个表 更新表 UPDATE OPENQUERY ([mysql1],'SELECT * FROM t1') ?set?i0=888 where id=1 更佳写法,尽量使用远程过滤 UPDATE OPENQUERY ([mysql1],'SELECT * FROM t1 where id=1') ?set?i0=888 插入表,注意:使用where 0=1,不返回记录,只获取表结构 insert OPENQUERY ([mysql1],'SELECT id,s FROM t1 where 0=1')?values(2,'444')删除 delete OPENQUERY ([mysql1],'SELECT * FROM t1 where id=5')? 复杂一些 update t2 set i0=t1.i0 from OPENQUERY ([mysql1],'SELECT * FROM t1')t1 WHERE t1.id=t2.id 总之,没什么不可能的了。 _________________________________________________________________________________________________ 建立链接服务器步骤: 1.在windows上安装 mysql 的 ODBC驱动程序,64位windows就安装64位的 官网下载地址:http://dev.mysql.com/downloads/connector/odbc/ 2.然后windows菜单中找到 ODBC数据源(64位) 在系统DSN中配置一个,选择刚安装的Mysql ODBC 5.x union code Driver datasource name输入 mysqlDSN 其他地址端口用户口令数据库都填写上,测试一下 3.增加链接服务器 在SQLServer管理中,服务器对象/链接服务器,新增一个,名字取 mysql1
其他数据源,选提供程序:Microsoft OLE DB Provider For ODBC Drivers 数据源输入刚才建立的,mysqlDSN,然后在 安全性 中输入mysql的用户密码 增加成功,即可使用mysql1了 读mysql表 SELECT * ?FROM ?OPENQUERY([mysql1],'select * from t1 where id=1') (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |