우편번호 DB 만들기 (mysql)

우편번호|우편일련번호|시도|시도영문|시군구|시군구영문|읍면|읍면영문|도로명코드|도로명|도로명영문|지하여부|건물번호본번|건물번호부번|건물관리번호|다량배달처명|시군구용건물명|법정동코드|법정동명|리|산여부|지번본번|읍면동일련번호|지번부번
  • 우편번호 테이블 정보에 맞추어 다음과 같이 DB내 테이블 생성
create table `seoul` (
 `zipcode` varchar(6) default NULL,
 `zipseq` varchar(10) default NULL,
 `sido` varchar(30) default NULL,
 `sido_eng` varchar(30) default NULL,
 `sigungu` varchar(30) default NULL,
 `sigungu_eng` varchar(30) default NULL,
 `eupmyun` varchar(30) default NULL,
 `eupmyun_eng` varchar(30) default NULL,
 `streetcode` varchar(12) default NULL,
 `street` varchar(90) default NULL,
 `street_eng` varchar(90) default NULL,
 `isunder` char(1) default NULL,
 `buildingnum1` varchar(5) default NULL,
 `buildingnum2` varchar(5) default NULL,
 `buildingcode` varchar(25) default NULL,
 `massdestination` varchar(60) default NULL,
 `building` varchar(50) default NULL,
 `dongcode` varchar(10) default NULL,
 `dong` varchar(30) default NULL,
 `ri` varchar(30) default NULL,
 `ismountain` char(1) not NULL default '0',
 `jibun1` int(4) not NULL,
 `dongseq` varchar(2) default NULL,
 `jibun2` int(4) not NULL,
 primary key (`buildingcode`,`ismountain`,`jibun1`,`jibun2`),
 key `IDX_STREET` (`street`),
 key `IDX_DONG` (`dong`),
 key `IDX_BUILDING` (`building`),
 key `IDX_MASSDESTINATION` (`massdestination`),
 key `IDX_ZIPCODE` (`zipcode`)
 ) engine=myisam default charset=utf8; 
  • 다운받은 텍스트 파일은 UTF-8(BOM없음)으로 변환하고 헤더줄은 제거하여 저장

  • ftp 업로드 후 다음과 같은 형식으로 mysql에서 테이블로 로딩(파일 및 테이블 지정 반드시 확인)

LOAD DATA LOCAL INFILE '/home/cafe24/20140724_seoul.txt' INTO TABLE seoul CHARACTER SET 'utf8' FIELDS TERMINATED BY '|';