5천만건 데이터 insert다시한번 질의합니다;; 0 10 3,352

by 원구 [2008.08.26 15:35:55]


emp 테이블을 생성하고

자료가 하나도 들어가 있는 상태가 아닙니다;

create table emp_soo
(emp_id number(8) primary key,
ename varchar2(15),
job char(1) default '0',
hiredate date,
fireddate date);

위와 같이 테이블을 생성하고, 5천만건이 넘는 데이터를 입력을 해야되는데

2분께서 sqlldr을 사용하라고 하셨거던요. 검색을 해보니깐

엑셀 파일을 cvs을 가져와서 ctl인가로 로드를 하는거 같은데요

저는 엑셀은 물론 아무것도 없이 순수하게 데이터를 넣어야되는거라서요;;

 

by 디제이쿠 [2008.08.26 15:38:46]
그럼 그 5천만건이 넘는 데이터는 뭘로 저장이 되어있는거죠??

by 원구 [2008.08.26 15:39:37]
저장이 되있는것이 아닙니다;;;

만들어서 넣어야되요;;

좀 황당하신가욤?

by 원구 [2008.08.26 15:42:58]
테이블 조건에 맞게
이름과 직업 고용일자 퇴직일자에 맞게 그냥 데이터만 들어가면 되는겁니다;

by 원구 [2008.08.26 15:53:48]
사원테이블을 제가 생성을 한 다음에 5천만권정도되는 데이터를 입력을 하는 insert문을 작성을 해야된다는게 문제입니다;;;

by 허스키 [2008.08.26 15:59:59]
문제는 현재 테이블만 만들어 놓은 상태이고 거기에 5천만건의 데이터를 입력해야 하는데 그걸 INSERT문을 이용해서 5000만번을 입력하는게 아닌 다른 방법을 찾고 계시는군요.. 아시는분 안계시나요?

by 현 [2008.08.26 16:13:46]
입력을 하는 방법은 insert, sqlldr,export table을 이용하는 것이 있습니다만,
문제는 5천만건의 데이터를 만들어 내는 것이 문제겠네요..
질문 자체가 두개로 나뉘어 있는것이 문제네요..
일단 5천만건의 데이터를 만드시고,
입력방법은 그 다음에 생각해보셔야 할 듯 합니다.

by 원구 [2008.08.26 16:22:20]
네 ㅠㅠ

좋은 답변 감사드립니다.

by 디제이쿠 [2008.08.26 16:44:36]
음.. 결론은 5천만건 데이터의 입력이 아니라 5천만건 데이터의 생성인건가요...

by 원구 [2008.08.26 17:02:05]
넹 ㅠㅠ

초반에 질문을 잘못해서 죄송합니다. ㅋㅋ

근데 가능할까요? ㅡ.ㅡ; 무슨 방법이 있으니깐 하라고 시킨거겠죠 ㅋ

찾아봐야겠네욤

by 삼치 [2008.08.26 17:28:12]
INSERT INTO emp_soo
SELECT * FROM(
SELECT LEVEL emp_id ,
'EMP_'||LEVEL ename,
'0' job,
SYSDATE-1000 hiredate,
SYSDATE fireddate
FROM DUAL
CONNECT BY LEVEL <= 50000000
);
댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입