2012-08-12 2 views
0

SQLite로 .sql 파일을 읽으려고합니다. 파일이 여러 항목을 한 번에 추가 할 수있는 MySQL에서 덤프 되었기 때문에 구문 오류가 발생합니다. 'm SQLite v3.7.7을 사용합니다.이 명령은 VALUES 명령으로 한 번에 하나 이상의 테이블에 하나 이상의 항목을 읽을 수 없습니다.SQLite 데이터베이스에 여러 행을 삽입 할 수 없습니다.

필자는 SQLite를 업그레이드하거나 테이블에 한 번에 한 항목 씩 읽도록 파일을 수정해야한다는 것을 이해했습니다. 수만 개의 항목을 다루고 있으므로 UNION SELECT 명령을 삽입하는 것은 그리 쉬운 일이 아닐 것입니다.

답변

0

관심있는 VALUES 구문을 사용하려면 SQLite 3.7.11 이상이 필요합니다. 그러나 mysqldump은 약 100 command-line options입니다. 그리고 그 중 하나 인 --skip-extended-insert은 확장 된 삽입을 비활성화 할 수 있습니다. (따라서 행마다 하나의 INSERT 문을 얻는다.) mysqldump 문서를 읽고 대상에 더 잘 맞는 옵션으로 덤프를 다시 실행한다.

더 나은 것은 아직 list of SQLite converter tools입니다.

+0

나는 MySQL이 없다. 덤프 된 파일 만 있습니다. 혹시 SQLite 3.7.11 또는 그 이상을 구하는 방법을 알려 주실 수 있습니까? – Brandon

+0

MySQL을 다운로드하여 설치하고, 덤프를로드하고, 다른 명령 행 옵션을 사용하여 다시 덤프 할 수 있습니다. (어쩌면, 만약 당신이 그 데이터베이스에 대한 로그인 자격 증명을 가지고 있다면, 당신이 그것을 인식했는지 확신 할 수 없다.) Unix (ish) 시스템을 사용하고 있다면, 나는 먼저 패키지 매니저에서 SQLite를 업데이트하려고 노력할 것이다. 실패하면 [SQLite 다운로드 페이지] (http://www.sqlite.org/download.html/)에서 소스를 다운로드하고 컴파일하십시오. (아마 당신은 합병, configure 스크립트 및 makefile을 포함하는 다운로드를 원할 것입니다.) 현재 버전은 3.7.13입니다. –

관련 문제