본문 바로가기
SAS

SAS 서버 9.2에서 Oracle 서버를 라이브러리로 잡...

by 기서무나구물 2011. 2. 18.

포스팅 목차

    Programming Category (English)728x90

     

    * 출처 : http://cafe.naver.com/supermd/2038

     

    SAS 서버 9.2에서 Oracle 서버를 라이브러리 설정 에러

     

    SAS 서버 9.2에서 Oracle 서버를 라이브러리로 잡으면

     

    문자형 컬럼의 length가 4배로 커지는 문제가 발생함.

     

    ex) Temp 라는 Oracle 테이블의 X1이라는 컬럼이 varchar(4)로 되어 있으면

         Temp를 SAS에서 열었을 때 X1의 length가 16으로 나타남

     

     

    autoexec.sas에서 라이브러리를 잡을 때 아래 옵션을 사용하면 해결 할 수 있음.

     

    SAS Statements
    rsubmit;
    
    libname   ora   oracle path=xxxx user=userid password=pwd  dbcommit=1000 insertbuff=1000 schema=xxxx
    
    adjust_byte_semantic_column_lengths=no
    
    ;
    
    endrsubmit;

     

     

    path-through 로 Oracle 테이블을 사용할 때도 같은 옵션으로 해결.

     

    SAS Statements
    proc sql;
        connect to oracle(user=userid password=pwd path=xxxx 
    
    adjust_byte_semantic_column_lengths=no
    
    );
        create table    test    as
        select * from connection to oracle
            (
            select  *
            from    temp
            );
        disconnect from oracle;
    quit;

     

     

    http://support.sas.com/ documentation/cdl/en/acreldb/63283/HTML/default/viewer.htm#/ documentation/cdl/en/acreldb/63283/HTML/default/a003239914.htm

     

    백승민

    님의

    파란블로그

    에서 발행된 글입니다.

     

    반응형

    댓글