db2 table 복사

1. ddl 확인 및 수정
> db2look -d DB_NAME -e -t TABLE_NAME -nofed -x > TABLE_NAME_look.out
> vi TABLE_NAME_look.out
. TABLE_NAME -> TABLE_NAME_TEST 변경
2. table 생성 및 insert
> db2 -stvf TABLE_NAME_look.out
> db2 "insert into SCHEMA.TABLE_NAME_TEST select * from SCHEMA.TABLE_NAME;
* 추가
1. DDL 확인 및 수정
> db2look -d DB_NAME -e -t TABLE_NAME -nofed -x > TABLE_NAME_look.out
> vi TABLE_NAME_look.out
. TABLE_NAME -> TABLE_NAME_TEST1 변경
2. table 생성 및 insert
> db2 -stvf TABLE_NAME_look.out
> db2 "insert into SCHEMA.TABLE_NAME_TEST1 select * from SCHEMA.TABLE_NAME;
3. TABLE_NAME_TEST2 생성 및 데이터 입력(PK_COLUMN)
> db2look -d DB_NAME -e -t TABLE_NAME -nofed -x > TABLE_NAME_look.out
> vi TABLE_NAME_look.out
. TABLE_NAME -> TABLE_NAME_TEST2 변경
. PK column 만 생성
> db2 -stvf TABLE_NAME_look.out
> db2 "insert into SCHEMA.TABLE_NAME_TEST2 ( select PK_COLUMN from SCHEMA.TABLE_NAME except select PK_COLUMN
from into SCHEMA.TABLE_NAME_TEST1 );
4. TABLE_NAME_TEST3 생성(구조만)
> db2look -d DB_NAME -e -t TABLE_NAME -nofed -x > TABLE_NAME_look.out
> vi TABLE_NAME_look.out
. TABLE_NAME -> TABLE_NAME_TEST3 변경
> db2 -stvf TABLE_NAME_look.out
5. 비교
> db2 "select TABLE_NAME.* from TABLE_NAME, TABLE_NAME_TEST2 where TABLE_NAME.PK_COLUMN
= TABLE_NAME_TEST2.PK_COLUMN";
> db2 "insert into TABLE_NAME_TEST3 (select TABLE_NAME.* from TABLE_NAME, TABLE_NAME_TEST2 where
TABLE_NAME.PK_COLUMN = TABLE_NAME_TEST2.PK_COLUMN)";
6. 원본 table 수정
> delete from SCHEMA.TABLE_NAME;
> create nickname SCHEMA.N_TABLE_NAME(신규) for db2sver.SCHEMA.TABLE_NAME(운영);
> db2 "insert into SCHEMA.TABLE_NAME(운영) select * from SCHEMA.N_TABLE_NAME(신규);

댓글

이 블로그의 인기 게시물

[ASP] ASP에서 오라클 DB연결 문의 - Microsoft OLE DB Provider for Oracle error '80004005'

db2 user 생성 및 권한 설정

[자바스크립트] 소수점 계산오류가 생길때 해결 방법