[SQL][관리] Load data 구문에 대하여
* LOAD DATA INFILE *
– load data infile명령은 텍스트 파일에서 데이터를 읽어 빠른 속도로 테
이블에 입력해준다.
– LOAD DATA [LOCAL] INFILE ‘file_name.txt’ REPLACE INTO TABLE
tbl_name
FIELDS TERMINATED BY ‘\\t’;
– 위 명령에서 [LOCAL] 키워드를 사용할 경우 클라이언트의 호스트에 존재
하는 파일을 사용하고, 그렇지 않은 경우 MYSQL이 구동중인 서버에 존재하
는 파일이 사용된다. 서버에 존재하는 파일을 이용 load data infile 명령
을 실행하기 위해서는 file 권한을 가지고 있어야 하며 보안상의 이유로
서버에 존재하는 파일을 읽을 경우 해당 데이타베이스의 디렉토리에 존재
하거나 누구나 읽을수 있는 피미션을 가지고 있어야 한다.
– 만약 계정 사용자들이 txt 파일을 자기 db table에 load data 할때
[LOCAL]
옵션을 빼면 안됨.
– REPLACE : 기존의 행은 삭제되고 새로운 값이 입력된다.
IGNORE : 새로운 값은 무시되고 기존의 값이 보존된다.
– FIELDS : TERMINATED BY,[OPTIONSLLY]ENCLOSED BY, ESCAPED BY중 반드
시 한가지 이상 사용해야 한다.