티스토리 뷰

Programming/SQL

주소DB Import 하기(활용편 #2)

우주아줌마 2021. 11. 17. 15:30
728x90
반응형

주소DB활용방법 내용을 보고 각 테이블을 만들어 준다
Primary Key , Foreig key (기본키 , 외래키 설정도 잘 확인해서 설정해준다

도로명주소 / 테이블명 'road_juso'

CREATE TABLE juso.road_juso (
	관리번호 varchar(25) NULL,
	도로명코드 varchar(12) NULL,
	읍면동일련번호 varchar(2) NULL,
	지하여부 varchar(1) NULL,
	건물본번 int(5) NULL,
	건물부번 INT(5) NULL,
	기초구역번호 varchar(5) NULL,
	변경사유코드 varchar(2) NULL,
	고시일자 varchar(8) NULL,
	변경전도로명주소 varchar(25) NULL,
	`상세주소부여 여부` varchar(1) NULL,
	CONSTRAINT road_juso_PK PRIMARY KEY (관리번호),
	CONSTRAINT road_juso_FK FOREIGN KEY (도로명코드,읍면동일련번호) 
   	 REFERENCES juso.road_code(도로명코드,읍면동일련번호)
)
ENGINE=InnoDB
DEFAULT CHARSET=utf8mb4
COLLATE=utf8mb4_general_ci;

부가정보 / 테이블명 'add_info'

CREATE TABLE `add_info` (
  `관리번호` varchar(25) NOT NULL,
  `행정동코드` varchar(10) DEFAULT NULL,
  `행정동명` varchar(20) DEFAULT NULL,
  `우편번호` varchar(20) DEFAULT NULL,
  `우편번호일련번호` varchar(3) DEFAULT NULL,
  `다량배달처명` varchar(40) DEFAULT NULL,
  `건축물대장건물명` varchar(40) DEFAULT NULL,
  `시군구건물명` varchar(40) DEFAULT NULL,
  `공공주택여부` varchar(1) DEFAULT NULL,
  PRIMARY KEY (`관리번호`),
  CONSTRAINT `add_info_FK` FOREIGN KEY (`관리번호`) 
  REFERENCES `road_juso` (`관리번호`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4

 

지번(대표+관련) / 테이블명 'jibun'

CREATE TABLE juso.jibun (
	관리번호 varchar(25) NULL,
	일련번호 varchar(3) NULL,
	법정동코드 varchar(10) NULL,
	시도명 varchar(20) NULL,
	시군구명 varchar(20) NULL,
	법정읍면동명 varchar(20) NULL,
	법정리명 varchar(20) NULL,
	산여부 varchar(1) NULL,
	`지번본번(번지)` varchar(4) NULL,
	`지번부번(호)` varchar(4) NULL,
	대표여부 varchar(1) NULL,
	CONSTRAINT jubun_PK PRIMARY KEY (관리번호),
	CONSTRAINT jubun_FK FOREIGN KEY (관리번호) 
    REFERENCES juso.road_juso(관리번호)
)
ENGINE=InnoDB
DEFAULT CHARSET=utf8mb4
COLLATE=utf8mb4_general_ci;

이제 테이블을 다 만들었으니 테이블에 데이터를 넣어야 한다.

개선_도로명코드_전체분. txt 먼저 Import 하도록 해보자

나는 SQL 문을 잘 다루지 못하고 외우고 있지도 않다 해서 나는 툴을 사용한다

여러분도 툴사용하면 엄청이 편하데 우리가 왜 윈도우를 쓰나 아이콘만 클릭 하면서 쓰면 되는 편리함 때문 아닌가 ! ㅋㅋㅋ 참고로 난 HPUX 엔지니어다...ㅋㅋㅋㅋㅋㅋ

DDL 문으로 만들어 주고 싶긴한데 테스트 해볼 시간도 없고해서 그냥 DDL 문은 각자 찾아봐라 ㅋ

각 데이터들을 Import 가 끝났다면 우선 축하한다... 난 처음에 안돼서 하루 날렸다...

'add_info' , 'jibun' , 'road_code' , 'road_juso' 이렇게 총 4개의 테이블에 데이트를 부어 주면 끝이다

- DB Tool 은   DBeaver 21.2.4  을 다운 받아 사용 했다
  (아무래도 유료 프로그램들보다 불편한 건 많음)


아..아.. 내가 하나하나 툴로 넣다가 디는 줄 알았다... 툴을 골라도 잘못 고른거 같다

한번에 여러 파일을 임포트 못한고... 컬럼명도 일일이 지정해줘야 해서 그냥 쿼리문 으로 하겠다

LOAD DATA local INFILE '/juso/주소_경상남도.txt' 
INTO TABLE road_juso
FIELDS TERMINATED BY '|';

내용을 보면 대충 눈치가 있겠지만 local infile ' 경로명/파일명' 하면 된다.
참고로 경로에 띄어쓰기나 한글이 있으면 안되는듯 하다 

오늘 은 가입시 주소까지 넣는 WEB Page  를 만들고 싶었는데
DB Import 하다 시간 다 까먹었따 내일 하자

주소DB Import 하기(활용편 #2)



728x90
반응형

'Programming > SQL' 카테고리의 다른 글

주소DB Import 하기(활용편#1)  (0) 2021.11.16
댓글