转自:http://www.cnblogs.com/hukn/archive/2011/07/27/SQL_Server_ODBC_LinkServer_MySQL.html
SQL Server 2008中需要访问MySQL的数据,可以通过调用MySQL的ODBC驱动,在SQL Server中添加LinkServer的方式实现。
步骤:
1.从MySQL网站下载最新的MySQL ODBC驱动:http://www.mysql.com/downloads/connector/odbc/
2.在SQL Server所在的服务器安装,并在ODBC中建立System DSN,命名为“MySQLODBC”。
3.在SQL Server建立Linkserver,可通过如下脚本实现:
EXEC master.dbo.sp_addlinkedserver
@server = N'ServerName',
@srvproduct=N'mysql',
@provider=N'MSDASQL',
@datasrc=N'MySQLODBC'
EXEC master.dbo.sp_addlinkedsrvlogin
@rmtsrvname=N'Servername',
@useself=N'False',
@locallogin=NULL,
@rmtuser=NULL, --登录mysql的用户名
@rmtpassword=NULL --登录mysql的密码
之后可以通过OPENQUERY的方式调用MySQL的数据:
INSERT INTO OPENQUERY(Servername,'select * from DBName.tablename')
SELECT '1'
SELECT *
FROM OPENQUERY(Servername,'select * from DBName.tablename')
UPDATE OPENQUERY(Servername,'select * from DBName.tablename')
SET colname='2'
WHERE colname='1'
SELECT *
FROM OPENQUERY(Servername,'select * from DBName.tablename')