>  기사  >  데이터 베이스  >  열 개수가 일치하지 않을 때 XML 파일을 MySQL 테이블로 가져오는 방법은 무엇입니까?

열 개수가 일치하지 않을 때 XML 파일을 MySQL 테이블로 가져오는 방법은 무엇입니까?

Linda Hamilton
Linda Hamilton원래의
2024-10-30 01:54:28678검색

How to Import an XML File into a MySQL Table When Column Counts Don't Match?

XML_LOAD() 함수를 사용하여 XML 파일을 MySQL 테이블로 가져오기

문제:

XML 파일을 MySQL로 가져오기 테이블에 열 개수가 일치하지 않아 오류가 발생합니다: "열 개수가 값 개수와 일치하지 않습니다."

원인:

XML 파일에 다음과 같은 열 값이 없습니다. 자동 증가 속성이 있는 데이터베이스 테이블의 id 열에 해당합니다.

해결책:

가져오는 동안 id 열을 제외하면 다음을 신뢰할 수 있습니다. MySQL의 자동 증가 기능을 사용하여 채웁니다. 이렇게 하려면 LOAD XML 문에서 id 열을 생략하고 가져오려는 열을 지정합니다.

구문:

LOAD XML LOCAL INFILE '/pathtofile/file.xml' INTO TABLE my_tablename(personal_number, firstname, ...);

예:

귀하의 경우 다음 명령문은 id 열을 제외하고 XML 파일을 my_tablename 테이블로 가져옵니다.

LOAD XML LOCAL INFILE '/pathtofile/file.xml' INTO TABLE my_tablename(personal_number, firstname, lastname, email, start_time, end_time, employee_category);

더 스마트한 XML 가져오기 처리:

LOAD XML 함수 대신 MariaDB에서 제공하는 XML to MySQL 유틸리티를 사용하는 것을 고려할 수 있습니다. 다음을 포함한 여러 가지 이점을 제공합니다.

  • 열 매핑 사용자 정의
  • 오류 처리 및 유효성 검사
  • XSD 스키마 지원

설치 및 사용:

  1. MariaDB용 xml2mysql 패키지 설치:
sudo apt-get install mariadb-server-xml2mysql
  1. 다음 명령을 사용하여 XML 파일을 가져옵니다.
mysql -u username -p password database_name < /pathtofile/file.xml

위 내용은 열 개수가 일치하지 않을 때 XML 파일을 MySQL 테이블로 가져오는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.