2012-01-29 5 views
0

두 가지 큰 데이터베이스가 CSV & XML 형식이고 MySQL 데이터베이스로 가져 오려고합니다.CSV 또는 XML을 MySQL에 가져 오기

LOAD DATA INFILE을 (를) 사용하려고 시도했지만이 오류 메시지가 나타납니다. ERROR 1064 (42000) : SQL 구문에 오류가 있습니다. 라인 1

MySQL 버젼에서 ''근처 사용할 수있는 권리 구문에 대한 MySQL 서버 버전에 해당하는 설명서를 확인하십시오

을 5.1.56을-로그 난에 XML을 변환 PHP를 사용하기 위해 성공하지 않고 시도 array then line by line을 삽입하십시오.

편집 : MySQL로 XML을 가져 루트로이 쿼리를 사용

:

LOAD의 XML 표 k_logs INTO 로컬 파일 '/home/floupie/public_html/All.xml';

+0

LOAD DATA INFILE에 사용 된 SQL은 무엇입니까? – ori

+0

LOAD XML 로컬 파일 '/home/floupie/public_html/All.xml'INTO TABLE'k_logs'; – Hamza

+0

'LOAD XML LOCAL INFILE'을 (를) 의미합니까? 행 ''로 식별 TABLE 호텔 INTO '/home/hotels/public_html/Hotels_All.xml' 을 LOAD의 XML LOCAL INFILE을 : – ori

답변

3

이것은 csv로드에 적합한 구문입니다.

LOAD DATA LOCAL INFILE '/importfile.csv' 
INTO TABLE test_table 
FIELDS TERMINATED BY ',' 
LINES TERMINATED BY '\n' 
(field1, filed2, field3); 

이것은 XML로드에 적합한 구문입니다.

LOAD XML LOCAL INFILE 'items.xml' 
INTO TABLE item 
ROWS IDENTIFIED BY '<item>'; 
+0

동일한 오류 : 는 사용하지 ; ERROR 1064 (42000) : SQL 구문에 오류가 있습니다. 'XML LOCAL INFILE'/home/hotels/public_html/Hotels_All.xml '근처에서 사용할 올바른 구문은 MySQL 서버 버전에 해당하는 설명서를 확인하십시오. INTO TABLE hotels 행 1에서 – Hamza

+0

LOAD XML INFILE은 다음에서 사용 가능합니다. MySQL 5.2 이상, 어떤 버전을 사용하고 있습니까? –

+0

MySQL 버전 : 5.1.56-log – Hamza