关于SQL Server链接MySQL的几个实例

通过程序访问多数据库的时候进行了SQLServer链接MySQL数据的实践,现总结如下:

一、  安装mysql-connector-odbc驱动;

1. 在SQL Server服务器的机器上安装mysql-connector-odbc驱动;

 其64位下载地址为:  http://pan.baidu.com/s/1gdq9WyB    

在安装过程中可能会报

 

的错误,只需要安装Microsoft Visual C++ 2010 Redistributable Package即可

 其64位安装包下载地址为:http://pan.baidu.com/s/1i3vp9rB

2. 安装完成之后建立ODBC数据源;

在控制面板-》管理工具-》数据源(ODBC)-》系统DSN中添加系统数据源,mysql ODBC相关驱动

 

填写Mysql数据库相关信息

 

这样配置ODBC数据源就完成了。

二、  在SQL Server数据上创建链接服务器;

在数据库“服务器对象“-》”链接服务器“中新建‘链接服务器’填入相关信息即可;
 

 
 

其中访问接口字符串的格式为’ Driver={MySQL ODBC 5.3 Unicode Driver};Server=192.168.1.XXX;Database=dasems;User=root;Password=111111;Option=3;’;

访问接口要选择

 

三、  链接服务器的使用方法。

增加数据:

insert into openquery(mysqllink,'select * from testtable')
select 1,'Peter',30;

删除数据:

delete from openquery(mysqllink,'select * from testtable')
where id=1;

修改数据:

update openquery(mysqllink,'select * from testtable')

set name='Jone' where id=1;

查询数据:

select * from openquery(MYSQL_LINUX,'select * from buildinginfo ');

详解SQL Server如何链接远程MySQL

最近遇到“SQL如何链接远程MySQL”这个问题,现在问题终于解决,特把方法贴出来:(我所用的操作系统是Win7,数据库是SQL2005。)

1、在SQL SERVER服务器上安装MYSQL ODBC驱动;

http://dev.mysql.com/downloads/mirror.php?id=376346(下载地址)

2、安装好后,在管理工具-ODBC数据源-系统DSN-添加-选择 MYSQL ODBC 3.51 DRIVER-完成

会跳出来MYSQL连接参数.

Data Source Name:数据源名称

Decription:描述,随便写

Server:MYSQL服务器的IP

Port:MYSQL的端口,默认的是3306.可以改的.

User:连接账号(在mysql上授权的账号,同时给予相应权限)

Password:密码

Database:选择链接的数据库

填好之后,点下test.成功了则会如图跳出提示框.

成功之后:

3,打开SQL数据库,找到链接服务器.创建链接服务器,大家都会的,所以我就把参数发一下.如图,常规选项的其他的就不用填了.确定就行了.

这里,需要注意:访问接口要选择“Microsoft OLE DB Provider for ODBC Drivers”。

数据源:选择之前已创建好的ODBC接口。

4、测试一下:

(查询语句)

SELECT   *   FROM  OPENQUERY(MYSQL, 'select   *   from   table '  )

(插入语句)

Insert openquery(MYSQL, 'select * from table') (id,name,password) values(8,'齐达内','99999')

在SqlServer下增加MySql的链接服务器

要在SqlServer上服务器上这装MySql的ODBC驱动,我下载的是mysql-connector-odbc-winx64.zip,安装后在ODBC中有了DRIVER={MySQL ODBC 5.3 ANSI Driver}({MySQL ODBC 5.3 Unicode Driver})

-- 查询已有的链接服务器
exec sp_linkedservers;
--删除链接服务器 
exec sp_dropserver 'MySQL_TestDB' , 'droplogins'
-- 脚本方式
EXEC sp_addlinkedserver 
    @server = 'MySQL_TestDB', 
    @srvproduct='MySQL',
    @provider = 'MSDASQL', 
    @provstr = 'Driver={MySQL ODBC 5.3 ANSI Driver};
    Server=localhost;
    Database=zkeco_db;
    User=root;
    Password=1234;
    Option=3;'
GO 
EXEC sp_addlinkedsrvlogin 
    @rmtsrvname='MySqlTest',
    @useself='false',
    @rmtuser='root',
    @rmtpassword='123456';
GO
EXEC sp_addlinkedserver  
     @server = 'MySQLTest', 
     @srvproduct='zkeco_db', 
     @provider = 'MSDASQL',
     @provstr = 'DRIVER={MySQL ODBC 5.3 ANSI Driver};SERVER=127.0.0.1;DATABASE=zkeco_db;UID=root;Password=;PORT=17770;',
      @datasrc = NULL
 GO 
 EXEC sp_addlinkedsrvlogin  
     @rmtsrvname='MySqlTest',
     @useself='false',
     @locallogin='sa',
     @rmtuser='root',
     @rmtpassword='' 
     
GO 
SELECT * FROM OPENQUERY (MySQL_TestDB,'select * from userinfo')
INSERT OPENQUERY (MySQL_TestDB, 'SELECT id,parentid,level,title FROM monolithpro_cate') VALUES ('','0','0','zhangzongqi');
UPDATE OPENQUERY (MySQL_TestDB, 'SELECT parentid,level,title FROM monolithpro_cate WHERE id = 320') SET parentid = '2',LEVEL=3, title=title+'pct';
DELETE OPENQUERY (MySQL_TestDB, 'SELECT id FROM monolithpro_cate WHERE id = 316');

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索sql
, 数据库
, mysql
, 服务器
, 数据
链接
sqlserver 链接mysql、sql server 链接mysql、sqlserver触发器实例、sql server 实例名、sqlserver默认实例名,以便于您获取更多的相关知识。

时间: 2024-12-10 02:28:00

关于SQL Server链接MySQL的几个实例的相关文章

SQL Server链接服务器访问DB2设置步骤图解

原文 http://database.51cto.com/art/201108/283240.htm SQL Server可以使用链接服务器功能来连接其他的数据库,以实现不同数据库之间的操作.本文我们主要介绍了利用SQL Server利用链接服务器连接访问DB2数据库的操作步骤,并给出了详细的截图,接下来就让我们一起来了解一下这部分内容吧. 使用SQL SERVER的链接服务器连接DB2 1.下载安装Microsoft OLEDB Provider for DB2,SQL SERVER链接服务器

SQL Server 链接服务器的安全

原文:SQL Server 链接服务器的安全 一.本文所涉及的内容(Contents) 本文所涉及的内容(Contents) 背景(Contexts) 安全设置(Security Settings) 实现效果:用户A能看见能使用,B用户不能看见这个链接服务器: 实现效果:用户A能看见能使用,B用户能看见但是没有权限使用: 总结 参考文献(References) 二.背景(Contexts) 当需要用远程服务器数据库和本地进行数据交互的时候(例如导数据等),我们通常会在本地创建一个远程服务器的数据

《SQL初学者指南(第2版)》——1.2 Microsoft SQL Server、MySQL和Oracle

1.2 Microsoft SQL Server.MySQL和Oracle 尽管我们的目标是介绍SQL的核心语言,因为它适用于所有的实现,但是,我也会提供SQL语法的一些具体示例.由于各个厂商的语法各异,我决定重点关注如下这3种数据库所使用的SQL语法: Microsoft SQL Server: Oracle: MySQL. 大多数情况下,这些数据库有着相同的语法.然而,偶尔也会有所不同.如果这3种数据库之间有任何的差异,本书的正文中将会采用Microsoft SQL Server的语法,我会

sqlserver-关系型数据库(sql server, oracle, mysql)中的数据Load到HBasez中

问题描述 关系型数据库(sql server, oracle, mysql)中的数据Load到HBasez中 我现在的数据是在关系型数据库(如sql server, oracle, mysql)中,且主键为复合主键,我现在想把这些数据导入到HBase中该怎么做啊?各位大神帮帮忙啊 解决方案 用Kettle抽数工具,很方便支持各种数据库之间的数据转换 解决方案二: 试试这个 数据抽取工具V3.0 http://download.csdn.net/detail/haonengbao/766908

Sql Server中Substring函数的用法实例解析_MsSql

SQL 中的 substring 函数是用来抓出一个栏位资料中的其中一部分.这个函数的名称在不同的资料库中不完全一样: MySQL: SUBSTR( ), SUBSTRING( ) Oracle: SUBSTR( ) SQL Server: SUBSTRING( ) SQL 中的 substring 函数是用来截取一个栏位资料中的其中一部分. 例如,我们需要将字符串'abdcsef'中的'abd'给提取出来,则可用substring 来实现: select substring('abdcsef'

Sql Server中Substring函数的用法实例解析

SQL 中的 substring 函数是用来抓出一个栏位资料中的其中一部分.这个函数的名称在不同的资料库中不完全一样: MySQL: SUBSTR( ), SUBSTRING( ) Oracle: SUBSTR( ) SQL Server: SUBSTRING( ) SQL 中的 substring 函数是用来截取一个栏位资料中的其中一部分. 例如,我们需要将字符串'abdcsef'中的'abd'给提取出来,则可用substring 来实现: select substring('abdcsef'

Oracle、SQL Server以及MySQL的自增变量设置

Oracle,SQL Server,MySQL的自增变量设置: 1.MySQL的自增变量是比较好记的,使用AUTO_INCREMENT关键字,如果知道英文的就容易记忆了,如 下创建一个带有自增变理的表. create table test(id int AUTO_INCREMENT primary key not null,name varchar (50)); 注释:此处的id一定要申明为主键,否则会报错. 2.SQl Server使用identity关键字,可以很容易指定从什么数开始,增幅是

从SQL Server到MySQL,4款主流迁移工具到底哪家强?

我之所以会写这篇对比文章,是因为公司新产品研发真实经历过这个痛苦的过程(传统基于SQL Server开发的C/S产品转为MySQL云产品).首次需要数据转换是测试环节,当时为了快速验证新研发云产品性能与结果准确性(算法类),所以需大量的原始数据,最快的办法就是使用老产品的真实数据.   因为在前期数据转换时主用于内部验证,并没有花很多心思去处理这个事情,一般数据能导过去,不对的地方自己再手工处理一下就好了.后面对这个转换工具引起了极大的重视是正式有老客户升级时,因为正式投入使用就容不得半点错误(

SQL Server COALESCE函数详解及实例_Mysql

SQL Server COALESCE函数详解 很多人知道ISNULL函数,但是很少人知道Coalesce函数,人们会无意中使用到Coalesce函数,并且发现它比ISNULL更加强大,其实到目前为止,这个函数的确非常有用,本文主要讲解其中的一些基本使用:   首先看看联机丛书的简要定义:  返回其参数中第一个非空表达式语法:  COALESCE ( expression [ ,...n ] ) 如果所有参数均为 NULL,则 COALESCE 返回 NULL.至少应有一个 Null 值为 NU