2012.02.17
테이블 정의서(EXCEL) 에서
ORACLE TABLE CREATION SCRIPT(TXT) 생성을 위한 엑셀 함수 사용
FORMAT 에 따라 변경하여 사용하여야 함
예)
테이블 정의서 포멧
![](https://t1.daumcdn.net/cfile/tistory/1525AA4F4F3DC0490B)
for Create table Script
-- 테이블 생성 시작 부분
=CONCATENATE("DROP TABLE ",F3," PURGE;")
=CONCATENATE("create table ",F3," (")
=IF(E5<>"",CONCATENATE(D5," ",E5," ",F5,IF(G5<>"",CONCATENATE("default ",G5),""),IF(D6<>"",", ",");")),IF(ISNUMBER(A5),CONCATENATE("alter table ",$F$3," add constraint ",B5, " primary key (",D5,");"),""))
for Comments
--COMMANT ON TABLE
=CONCATENATE("GRANT ALL ON ",$F$3," TO ODI01;")
=CONCATENATE("COMMENT ON TABLE ",$F$3," IS '",I3,"';")
=IF(ISNUMBER(A5),IF(E5<>"",CONCATENATE("COMMENT ON COLUMN ",$F$3,".",D5," IS '",B5,"';"),""),"")
in 매핑정의서
--INSERT
=IF(E6<>"",CONCATENATE(IF(C6<>"",CONCATENATE("INSERT INTO HTSIN01.",C6," ("),""),E6,IF(C7<>"",")",", ")),"")
--MAPPING
=IF(E6<>"",CONCATENATE(IF(AND(M6="",O6=""),"''",IF(OR(O6="MOVE",O6=""),CONCATENATE(K6,".",M6),O6))," ",E6,","),"")
--테이블 권한 부여 Oracle
테이블 정의서(EXCEL) 에서
ORACLE TABLE CREATION SCRIPT(TXT) 생성을 위한 엑셀 함수 사용
FORMAT 에 따라 변경하여 사용하여야 함
예)
테이블 정의서 포멧
-- 테이블 생성 시작 부분
=CONCATENATE("DROP TABLE ",F3," PURGE;")
=IF(E5<>"",CONCATENATE(D5," ",E5," ",F5,IF(G5<>"",CONCATENATE("default ",G5),""),IF(D6<>"",", ",");")),IF(ISNUMBER(A5),CONCATENATE("alter table ",$F$3," add constraint ",B5, " primary key (",D5,");"),""))
for Comments
=CONCATENATE("GRANT ALL ON ",$F$3," TO ODI01;")
=CONCATENATE("COMMENT ON TABLE ",$F$3," IS '",I3,"';")
=IF(ISNUMBER(A5),IF(E5<>"",CONCATENATE("COMMENT ON COLUMN ",$F$3,".",D5," IS '",B5,"';"),""),"")
in 매핑정의서
--INSERT
=IF(E6<>"",CONCATENATE(IF(C6<>"",CONCATENATE("INSERT INTO HTSIN01.",C6," ("),""),E6,IF(C7<>"",")",", ")),"")
--MAPPING
=IF(E6<>"",CONCATENATE(IF(AND(M6="",O6=""),"''",IF(OR(O6="MOVE",O6=""),CONCATENATE(K6,".",M6),O6))," ",E6,","),"")
--테이블 권한 부여 Oracle
select DECODE(OWNER,'*******', 'grant all on ','grant SELECT on ')||owner||'.'||TABLE_NAME || ' to odiwrk;' "--" from all_tables
where 1=1
and OWNER IN ('*****','******','****','******');