2016-08-23 3 views
1

코드를 실행할 때 테이블을 삭제하는 대신 테이블을 자르려합니다. 기존 테이블 삭제에서 테이블 잘라 내기로 코드를 변경하려면 어떻게해야합니까? SAS LASR 테이블에서 다음과 같은 코드의 라인이있다 :SAS LASR 테이블 잘림

/* Drop existing table */ 
%vdb_dt(LIBNAME.TARGETLASRTABLE); 

할 수있는 이유는, 그 테이블과 동시에 보고서 디자이너를 다시로드, 그것은 SAS VA에서 보고서 디자이너를 일으킬 때 때문에 "데이터 소스 (TARGETLASRTABLE)에 더 이상 액세스 할 수 없거나 대체되었습니다. 새 데이터 소스를 선택 하시겠습니까?"라는 오류 메시지가 나타납니다. "

테이블에 코드가 드롭되어 있기 때문에 프롬프트 메시지가 나타납니다. 프롬프트 메시지를 피하기 위해 drop 문을 truncate 문으로 변경하고 싶습니다. truncate 문을 기존 테이블을 대체 할 코드를 작성하는 방법이 있습니까? 도와주세요, 고마워요.

답변

0

SAS LASR 서버의 데이터를 관리하기위한 절차가 있습니다. 메모리 내 통계에서 IMSTAT이라고합니다. 또한 통계 및 예측 모델링 작업을 수행 할 수 있습니다.

그러나 질문에 다시 답변하십시오. IMSTAT 프로 시저를 사용하여 테이블을자를 수 있습니다.

/*LASR table truncation*/ 
proc imstat; 
    table vadst.productanalysis; 
    deleterows; 
    deleterows/purge; 
    run; 
quit; 

/*appending data to existing LASR table*/ 
data vadst.productanalysis(append=yes); 
    set vasrc.productanalysis; 
run; 

table vadst.productanalysis; - 작동 할 LASR 테이블을 선택합니다.

deleterows; - WHERE 절이 활성화되어 있지 않으면 삭제할 모든 행을 표시합니다. 삭제를 취소 할 수 있습니다.

deleterows/purge; - 삭제 표시된 행을 메모리에서 제거하도록 지정합니다. 행에 의해 사용 된 메모리가 해제됩니다.

LASR 서버와 메모리 테이블에서 많은 작업을하고 있다면이 절차에 익숙해지는 것이 좋습니다. 설명서는 다음과 같습니다. SAS® LASR™ Analytic Server 2.7