sqlserver怎么连接mysql_SQLServer数据库如何创建MYSQL的链接服务器

本文主要向大家介绍了SQLServer数据库如何创建MYSQL的链接服务器,通过具体的内容向大家展现,希望对大家学习SQLServer数据库有所帮助。

这两天需要从别人的mysql里读数据过来,由于在自动取数据过程中,要保存各类控制数据,这些数据还是存在我自己的SQLSERVER中比较方便,所以想来想去,决定用链接服务器。接下来把我建立链接服务器的经历跟各位分享一下:

整个过程共分为三大部分:准备过程、建立链接服务器、使用链接服务器示例

一、准备过程

需要准备的内容有:OLEDB、mysqlconnector、ODBC系统数据源

1、我的服务器上没有安装mysqlconnector(如果你装了mysql服务器了,自然会有的),所以第一步我安装了该部分,这个很简单,启动 mysql安装程序,过程中选择自定义安装,选择上mysqlconnector就可以了。当然也可以下载独立的mysqlconnector安装模块来安装。如果你搞不定,可以把整个的mysql全装上,自己再多摸索几次就知道了。

2、建立odbc数据源

3、准备oledb,很多同学可能遇不到这一步,我做了几台服务器才遇到一台出问题的。我当时已经把链接服务器建立了,但在查询时报错如下:

尚未注册 OLE DB 访问接口 "MSDASQL"。

如果你也遇到了这个问题,那就按我说的办吧。

我当时查了一下SQLSERVER中的链接服务器的访问接口,不知道的同学参考下图

这里面确实没有 MSDASQL,很多同学的都有,那就比较幸福啦。

这说明oledb接口msdasql没有注册,那怎么办呢,很简单,装一个,去微软网站下载一个就行了

安装过程就不说了,装完之后就可以了

二、建立链接服务器

还是用存储过程吧,方便

exec sp_addlinkedserver

@server='MYSQL',        --这是链接服务器的名称

@srvproduct='mysql',    --这个你自己随便吧

@provider='MSDASQL',    --这是固定的,不能瞎填,否则死定了

@datasrc='myserver', --这是ODBC里面data source name

@location=NULL,

@provstr='DRIVER={MySQL ODBC 5.2w Driver};SERVER=localhost;DATABASE=mba;UID=root;PORT=3306;',    --这个串你研究一下就知道了

@catalog = NULL

exec sp_addlinkedsrvlogin

@rmtsrvname='MYSQL',

@useself='false',

@rmtuser='root',

@rmtpassword='1';

三、使用链接服务器示例

select * from openquery(myserver,'SELECT * FROM tsk_kkd ; ')

到这里本该就写完了,但还是再奉送一句吧,openquery函数的第二个参数,也就是那个查询字符串部分,只能是字符串,放变量在那里是不行的,所以你想要拼动态语句的话,得整个语句一起拼,比如:

declare @sql varchar(2000),@table_name sysname

set @table_name='ssdc'

set @sql='select * from openquery(myserver,'+''''+' select MAX(id) id FROM  '+@table_name+';'+''''+');';

exec(@sql);

这下OK了。

本文由职坐标整理并发布,希望对同学们学习SQL Server有所帮助,更多内容请关注职坐标数据库SQL Server数据库频道!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值