全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
5729 2
2014-12-18
求指点:
我用的是SAS9.3简体中文版,MySQL的默认数据集也是utf8,但是使用SAS通过ODBC连接MySQL的时候,打开数据集中文均为乱码。

提示:
5    data raw.member(encoding="utf-8");
6    set test.www_member;
7    run;

NOTE: 数据文件“RAW.MEMBER.DATA”的格式是另一个主机的本地格式,或文件编码与会话编码不匹配。因此,系
      统将使用“跨环境数据访问”。这可能需要额外的 CPU 资源,并可能降低性能。
WARNING: During read: [MySQL][ODBC 5.1 Driver][mysqld-5.1.66]
NOTE: 从数据集 TEST.www_member. 读取了 42 个观测
NOTE: 数据集 RAW.MEMBER 有 42 个观测和 3 个变量。
NOTE: “DATA 语句”所用时间(总处理时间):


二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2015-7-1 15:02:19
问题出现的原因可能在在ODBC数据源的设置上,首先在控制面板中找到管理工具,点击打开数据源(ODBC),找到为该操作配置的数据源,点击打开,然后对其进行配置:进入配置界面后点击左下方的Details按钮:在connect菜单下的Character Set中选择gb2312(之所以选择gb2312是因为在用phpmyadmin对MySQL进行管理时,创建的表及其中表项的字符集均为:gb2312_chinese_si),点击OK。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2017-12-1 10:41:40
解决方法如下步骤:
1、解决odbc链接的编码问题
      在配置数据源的时候,设置character set 为 UTF8
2、sas快捷方式启动的时候,请使用:SAS 9.4 (Unicode 支持)
3、sas 链接数据库,请添加:DBCONINIT='set names utf8'
     例:libname myloc mysql user=root password=****** database=test server=localhost port=3306 DBCONINIT='set names utf8';
4、读写过程,便不会出现乱码
5、注意,其他sas数据集,如果不是由:SAS 9.4 (Unicode 支持) 执行产出的,如SAS 9.4 (中文(简体)),皆会出现乱码,
     请在SAS 9.4 (Unicode 支持) 重新执行生产sas数据集,再对mysql进行写入便不会出现乱码
附件列表
odbc配置.png

原图尺寸 61.45 KB

odbc配置.png

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群