分享

SAS连接数据库

 SAM_SAS_lib 2014-12-30

大数据的今天,将统计软件与数据库相连,实现数据之间的互通,可大大提高工作的效率;

SAS在与各种数据库的接口方面,做得非常完善。

连接各数据库的方法,其实大同小异。

本文以SAS连接oracle为例,描述怎么搭建SAS与数据库的连接。

1.      SAS自带的接口(access接口)

SAS与主流数据库之间,如oracle,DB2,sqlserver,sybase,Teradata,都有自带的接口;


1.1首先保证oracle配置文件完整,

即Oracle安装目录\ora90\network\admin\tnsnames.ora文件

保证oracle能够成功连接到服务器;

1.2  使用libname命令

Libname  mylib oracleuser=xxx  password=xxxxx path=xxxx;

连接成功后,会发现SAS资源管理器中,出现mylib库;

1.jpg

此时可将mylib作为SAS的一个逻辑库使用。

2.      odbc接口

除了自带的接口,SAS自然还提供了数据库之间连接的通用接口—odbc接口。

1.1   配置oracle数据源

打开控制版面,找到管理工具选项

2.jpg

点击进入管理工具,找到数据源

3.jpg

4.jpg


点击添加按钮,

5.jpg

选中oracle inorahome90后点击完成,注:oracle安装好后通常会自带odbc数据源,

但有些数据库,如mysql,需要去官网下载mysqlconnector,安装后才能使用。

6.jpg


第一行,填写这个数据源的名称,这里取oracle,

第二行,描述这个数据源,相当于备注,可不填,

第三行,单机下拉列表按钮,选中要连接的服务器名称,

        前提和上面一样,Oracle安装目录\ora90\network\admin\tnsnames.ora文件配置好,

        第四行,即登录用户名称

        完成后,点击testconnection 按钮

         7.jpg

         输入密码,点击ok

          8.jpg

         连接成功说明数据源配置成功。用户DSN窗口中会出现配置好的oracle数据源


         


2.2  odbc数据源配好后,同样可以用libname命令调用

libname mylib odbc datasrc=oracle(数据源的名称) user=xxxpassword=xxx


结果和上面一样,也可以将mylib当做SAS的数据库用。

不同的是这里的引擎使是odbc,前一种方法的引擎是oracle,log中也会提示。

3.      使用sql

上述两种方法,将oracle中一个库作为SAS的一个逻辑库,操作实施会很方便,但在数据的传输效率上并不能达到最好。

要想达到最高的效率,可以使用sql语句进行数据的传输(完全依赖网络传输速度)。

同样以连接oracle为例

proc sql;

connect to oracle as mylib (user=xxx password=xxx path=xxx);

create table table_name as               

select * from connection to mylib (select…); /*括号中查询语句需符合oracle的语法*/

disconnect  from  mylib;

quit;

注:上述括号中select语句使用的是oracle服务器进行处理。


    其余数据库连接,与上述方法类似,只是不同数据库登录命令稍有不同。本文只给出几种常用的连接方法,希望有兴趣的朋友加以补充。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多