错误描述:SQLSERVER访问MYSQL表中文显示成乱码,中文会显示成????
解决思路:用的是mysql- 5.1.50-win32 与odbc3.1版本的.现在改成ODBC5·1 这样转换就没有问题
SQLSERVER连接MYSQL 建立链接如下:
数据库软件与ODBC软件:mysql- 5.1.50-win32ODBC5·1(注意,odbc3.1版本,会出现乱码)
mysql下载链接MYSQL数据库情况:gmp_test
第一步:先要在MYSQL进行授权,让主机能访问MYSQL数据库,设置如下:
        在mysql数据库执行,语句:
GRANT ALL PRIVILEGES ON *.* TO 'root'@'192.168.1.216' IDENTIFIED BY 'yxtech' WITH GRANT OPTION;
第二步:在SQLSERVER主机,设置ODBC连接,设置如下图:
   
第三步:在SQL SERVER 配置连接,配置语句如下
--删除连接
exec sp_dropserver 'dxmysql','droplogins'
--建立一个新连接
EXEC SP_ADDLINKEDSERVER
@server = 'dxmysql',  --连接名称(随意,规范就可)
@srvproduct = 'MYSQL',  --连接MYSQL,数据库类型,固定的
@provider = 'MSDASQL',  --连接MYSQL的编码,固定的
@datasrc = 'my_sql'    --建立的ODBC连接(第二步建立的)
--建立用户连接
EXEC sp_addlinkedsrvlogin 'dxmysql','false','bi_etl','root','yxtech'
--'dxmysql'为连接名称
--'bi_etl'为SQLSERVER用户,如果为NULL
--'root','yxtech' 为登录MYSQL 的用户及密码
--进行查询
select *  FROM  OPENQUERY(dxmysql, 'select  *  from test1')

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。