Linux/mysql

xml파일 sql에 넣기

blackbearwow 2021. 12. 8. 23:13

참고 https://dev.mysql.com/doc/refman/8.0/en/load-xml.html

 

MySQL :: MySQL 8.0 Reference Manual :: 13.2.8 LOAD XML Statement

13.2.8 LOAD XML Statement LOAD XML [LOW_PRIORITY | CONCURRENT] [LOCAL] INFILE 'file_name' [REPLACE | IGNORE] INTO TABLE [db_name.]tbl_name [CHARACTER SET charset_name] [ROWS IDENTIFIED BY ' '] [IGNORE number {LINES | ROWS}] [(field_name_or_user_var [, fie

dev.mysql.com

입력 명령어는 다음과 같다.

LOAD XML LOCAL INFILE 'person.xml' INTO TABLE person ROWS IDENTIFIED BY '<person>';

현재 디렉토리 경로의 person.xml파일을 읽어 person TABLE에 데이터를 넣는다. row는 <person>을 경계로 구분한다.

 

 

하지만 지정된 형식을 지켜야 입력이 가능하다.

다음 3가지 형식만 입력 가능한다. row나 field나 name이 안써져있다면 적절히 바꾸자.

 

 

 

LOAD를 하려고 할 때 에러가 뜰 수 있다. 

ERROR 2068 (HY000): LOAD DATA LOCAL INFILE file request rejected due to restrictions on access.

해결방법 

local_infile을 설정해주고 다시 실행하면 된다.

참고: https://stackoverflow.com/questions/63361962/error-2068-hy000-load-data-local-infile-file-request-rejected-due-to-restrict

'Linux > mysql' 카테고리의 다른 글

Ubuntu 24.04 LTS 에서 mysql 설치  (0) 2021.12.08