2014-10-03 1 views
1

IBM netteza aginity sql 데이터베이스 워크 벤치에서 csv 파일로 테이블 (60GB)을 내 보내야합니다. IBM betezza aginity sql 데이터베이스 워크 벤치에서 큰 테이블을 내보낼 때 열 이름을 추가하는 방법

그러나, 열 이름은 내가 0

파일이 너무 커서로 "행을 건너 뛸"설정에도 불구하고 공개 할 수없는 및 Excel 또는 메모장/노트 패드 ++에서 편집 할 수 있습니다.

어떻게 열 이름을 추가 하시겠습니까?

도움을 주시면 감사하겠습니다.

감사

답변

1

는 지금까지 내가 아는 한, 자기 문서에 어떤 기능이 Aginity 워크 벤치에서 데이터를 수출하지 있습니다. 또한, 필자가 아는 한, 내보내기 기능의 "Skip Rows"기능은 비활성화되어 있으며 열 문서를 추가하는 것과 아무런 관련이 없습니다. 가져 오기의 경우 열 머리글 행을 건너 뛸 수 있습니다.

EDIT : NPS 7.2의 GA에서는 "IncludeHeader"옵션이 출력 파일에 주석 처리 된 헤더 줄을 만드는 사용 가능한 외부 테이블 옵션에 추가되었습니다. 이 기능을 직접 지원하기 위해 Workbench를 업데이트하는 데는 Aginity가 오래 걸릴 수 있지만, 생성 한 코드를 복사하고 수동으로 추가 할 수는 있습니다.

당신과 같이, 독립 헤더 파일과 윈도우의 명령 프롬프트 복사본 하나를 열지 않고 두 파일을 함께 추가 할 사용을 만들 수 있습니다 : 나는 헤더를 생성하는 두 가지 방법을 사용했다

copy header_file.txt+data_file.txt new_file.txt 

열.

첫 번째는 "LIMIT 1"을 사용하여 내보내기에 사용 된 쿼리를 실행 한 다음 출력 창에서 모든 출력을 선택하고 마우스 오른쪽 버튼으로 클릭 한 다음 "헤더로 복사"를 선택합니다. 그런 다음 출력을 Excel에 붙여넣고 머리글 목록에 붙여 넣을 수 있습니다.

두 번째 방법은 테이블에 열의 정렬 된 목록을 생성 한 다음 해당 출력을 스프레드 시트의 열에서 행으로 바꾸는 것입니다. 다음 코드 스 니펫을 사용하여 해당 출력을 생성 할 수 있습니다.

SELECT attname, 
    atttype, 
    attnotnull, 
    attnum 
FROM _v_relation_column_def 
WHERE attnum > 0 
AND objid = 
    (
     SELECT objid 
     FROM _v_obj_relation 
     WHERE objname = ^TABLENAME_TO_EXPORT^ 
     AND schemaId IN (current_schemaid, 
         4, 
         5) 
     AND objclass NOT IN (4919, 
          4917) 
     ORDER BY schemaId DESC 
    ) 
ORDER BY attnum 

이러한 접근 방식 중 어느 것도 완벽하지는 않지만 내가 갖고있는 것을 공유 할 수 있다고 생각했습니다.