通过SQL Server 2008 访问MySQL
来源:互联网 发布:盗梦侦探红辣椒 知乎 编辑:程序博客网 时间:2024/05/01 23:28
http://www.cnblogs.com/gnielee/archive/2010/04/02/access-mysql-from-sqlserver.html
在公司中经常会遇到部署多种数据库环境的情况,对于开发人员来说经常在不同数据库之间转换确实有些繁琐,本篇将介绍从SQL Server 操作MySQL 数据库的方法。
数据库测试环境
1. SQL Server 2008
2. MySQL 5.1.36
Database: Test
Table: TestTable
创建MySQL 测试表
CREATE TABLE `testtable` ( `id` int(11) DEFAULT NULL, `name` varchar(50) DEFAULT NULL, `age` int(11) DEFAULT NULL)
创建Linked Server
下面来创建一个与MySQL交互的链接(类似Oracle 的DBLink),在SQL Server 管理器中右键Server Objects 目录下的Linked Servers 点击“New Linked Server”:
Linked server 链接名称
Server Type 选择“Other data source”
Provider 选择“Microsoft OLE DB Provider for ODBC Drivers”
Product name 填写MySQL 主机地址
Provider String 填写 Driver={MySQL ODBC 5.1 Driver};Server=ServerName;Database=myDB;
User=myUserName;Password=myPassword;Option=3;
//要安装ODBC driver
也可以通过TSQL 直接创建:
EXEC master.dbo.sp_addlinkedserver @server = N'MYSQLLINK', @srvproduct = N'localhost', @provider = N'MSDASQL', @provstr = N'Driver={MySQL ODBC 5.1 Driver};Server=localhost; Database=test;User=root;Password=root;Option=3;'EXEC master.dbo.sp_addlinkedsrvlogin @rmtsrvname = N'MYSQLLINK',@useself = N'False',@locallogin = N'localhost',@rmtuser = N'root',@rmtpassword = N'root'
创建完成后便会看到下图中的链接:
操作MySQL 数据库
在SQL Server 中通过OPENQUERY 函数对MySQL 进行操作,该函数包含两个参数:第一个为已创建的链接名称,第二个为SQL 查询,它将返回对Linked Server 的读取或修改操作。如下操作示例:
OPENQUERY ([LinkedServer], 'SELECT * FROM [RemoteTable]')
向TestTable 中插入测试数据:
insert into openquery(mysqllink,'select * from testtable')select 1,'Peter',30;
查询数据:
select * from openquery(mysqllink,'select * from testtable');
修改数据:
update openquery(mysqllink,'select * from testtable')set name='Jone' where id=1;
删除数据:
delete from openquery(mysqllink,'select * from testtable')where id=1;
相关参考资料
http://dev.mysql.com/downloads/mirror.php?id=376346
http://www.connectionstrings.com/mysql#p21
出处:{GnieTech} (http://www.cnblogs.com/gnielee/)
版权声明:本文的版权归作者与博客园共有。转载时须注明本文的详细链接,否则作者将保留追究其法律责任。
- 通过SQL Server 2008 访问MySQL
- 通过SQL Server 2008 访问MySQL
- 通过SQL Server 访问MySQL
- SQL Server 2005通过LinkServer访问MySQL数据库
- SQL Server访问MySql
- 通过SQL Server 访问Oracle
- SQL Server 2008通过LinkServer连接MySQL
- SQL Server 2008通过LinkServer连接MySQL
- SQL Server 2008通过LinkServer连接MySQL
- 通过sql server 连接mysql
- 通过SQL Server 2008 访问Oracle 10g
- 通过SQL Server 2008 访问Oracle 10g
- 通过 MS SQL Server 访问注册表
- 通过HTTP访问SQL Server 2000数据库
- Java通过ODBC访问SQL Server 2000
- python 通过adodb访问sql server数据库
- InfoPath 通过Web Service 访问Sql Server
- SQL Server 通过链接服务器访问Oracle
- Hibernate中各个JAR包的用途
- hdu4605 线段树+dfs
- 使用Maven的jaxws-maven-plugin插件,将wsdl生成java
- jquery-jquery源码分析学习地址
- 经纬度中的度分秒转化为小数形式
- 通过SQL Server 2008 访问MySQL
- SVN服务器搭建和使用(一)
- 如何禁止listview的item项获得焦点,而让item的子控件获得焦点
- 0801leetcode刷题总结
- java反射机制访问private方法
- 海量源码打包下载,包含各行各业.
- SVN服务器搭建和使用(二)
- JTextField实现实时动态监听
- SVN服务器搭建和使用(三)