이 글은 님께서.. MS-SQL Server 를 사용하고 계시다는 전제로 참고하시기 바랍니다.
님 같은 경우라면 bcp 같은 유틸리티를 이용하면 편할 듯 합니다. 속도도 무지 빠르구요..
bcp.exe 는 C:Program FilesMicrosoft SQL Server80ToolsBinn 여기 들어 있을겁니다.
걍.. 도스 커멘드에서 bcp 엔터 해 보면 사용법이 간단하게 나올 겁니다.
간단한 예를 들어보면...
(db name 이 TEST 이고 csv 파일 이름이 'aaa.txt' 라고 할때)
bcp TEST in aaa.txt
이렇게 해 주심.. 잘 안될겁니다. (되면 다행이지만..^^)
맨 뒤에다가 format file 을 지정을 해줘야 하는데..
-f 옵션 에다가 format file 명을 붙여서 적어주면 됩니다.
(format file 명이 bbb.fmt 라고 하면..)
bcp TEST in aaa.txt -fbbb.fmt
요렇게 하심 됩니다.
근데 여기서 파일 이름들은 가급적 full path 를 다 적어주는 것이
정신건강에 좋을 듯 합니다.
근데 마지막으로 format file 은 무엇이고 어떻게 만드느냐면..
역시 도스커멘드에서
bcp TEST out ccc.txt
이렇게 하시고 엔터를 치시면 뭐.. 많이 물어봅니다.
신경쓸거 없이 걍.. 엔터만 좍 치고 넘어가세요..
마지막 까지 엔터를 치셨다면 bcp.fmt 라는 파일이 만들어 질겁니다.
여기서 수정 해 주실 것은..
큰따옴표(떠블쿼테이션) 안에다가 컴마를 집어 넣는 겁니다.
이게 바로 필드 구분자 입니다.
csv 파일은 보통 컴마(,) 로 필드가 구분되어 있으니까.. 말이죠..
여기서는 필드가 3개 있으니까.. 1, 2 번 항목에서는 컴마(,) 를 집어 넣어주고
마지막 3 번 항목에서는 'n' 즉, 개행문자를 넣어주면 됩니다.
이렇게 해서.. bcp.fmt 파일을 맘에 드는 적당한 이름으로 바꾸어 주시고..
위에 처럼 하시면.. 걍.. 수천 수만건이든.. 눈 깜짝할 사이에 db 에 들어가게 되죠..ㅋㅋㅋ
물론 db 에 있는 걸 text 파일로 끄집어 낼 수도 있슴다.
그럼.. 즐프하세요..^^
님 같은 경우라면 bcp 같은 유틸리티를 이용하면 편할 듯 합니다. 속도도 무지 빠르구요..
bcp.exe 는 C:Program FilesMicrosoft SQL Server80ToolsBinn 여기 들어 있을겁니다.
걍.. 도스 커멘드에서 bcp 엔터 해 보면 사용법이 간단하게 나올 겁니다.
간단한 예를 들어보면...
(db name 이 TEST 이고 csv 파일 이름이 'aaa.txt' 라고 할때)
bcp TEST in aaa.txt
이렇게 해 주심.. 잘 안될겁니다. (되면 다행이지만..^^)
맨 뒤에다가 format file 을 지정을 해줘야 하는데..
-f 옵션 에다가 format file 명을 붙여서 적어주면 됩니다.
(format file 명이 bbb.fmt 라고 하면..)
bcp TEST in aaa.txt -fbbb.fmt
요렇게 하심 됩니다.
근데 여기서 파일 이름들은 가급적 full path 를 다 적어주는 것이
정신건강에 좋을 듯 합니다.
근데 마지막으로 format file 은 무엇이고 어떻게 만드느냐면..
역시 도스커멘드에서
bcp TEST out ccc.txt
이렇게 하시고 엔터를 치시면 뭐.. 많이 물어봅니다.
신경쓸거 없이 걍.. 엔터만 좍 치고 넘어가세요..
마지막 까지 엔터를 치셨다면 bcp.fmt 라는 파일이 만들어 질겁니다.
이 파일을 열어보면.. 아래와 같이 되어 있을 겁니다.
8.0
3
1 SQLCHAR 0 10 "" 1 name Korean_Wansung_CI_AS
2 SQLCHAR 0 15 "" 2 tel Korean_Wansung_CI_AS
3 SQLCHAR 0 40 "" 3 addr Korean_Wansung_CI_AS
여기서 수정 해 주실 것은..
큰따옴표(떠블쿼테이션) 안에다가 컴마를 집어 넣는 겁니다.
이게 바로 필드 구분자 입니다.
csv 파일은 보통 컴마(,) 로 필드가 구분되어 있으니까.. 말이죠..
여기서는 필드가 3개 있으니까.. 1, 2 번 항목에서는 컴마(,) 를 집어 넣어주고
마지막 3 번 항목에서는 'n' 즉, 개행문자를 넣어주면 됩니다.
이렇게 해서.. bcp.fmt 파일을 맘에 드는 적당한 이름으로 바꾸어 주시고..
위에 처럼 하시면.. 걍.. 수천 수만건이든.. 눈 깜짝할 사이에 db 에 들어가게 되죠..ㅋㅋㅋ
물론 db 에 있는 걸 text 파일로 끄집어 낼 수도 있슴다.
그럼.. 즐프하세요..^^