2008-10-15 12 views
0

이 오류가 발생합니다 : -이상한 MySQL 구문 오류

SQL 구문에 오류가 있습니다.

기계류 것입니다
mysql> source /home/user1/sql/ddl.sql 
mysql> source /home/user1/sql/insert.sql 
mysql> source /home/user1/sql/cleanup.sql 

, 이런 일이 - : 나는 이런 식으로 뭔가를 시도 할 때마다 라인 1

에서 ' 근처에서 사용하는 올바른 구문 MySQL 서버 버전에 해당하는 설명서를 확인 각각의 SQL 스크립트에 적용되지만 첫 번째 명령문 만 손상됩니다. 스크립트의 나머지 명령문은 정상적으로 실행됩니다. 이 문제를 해결하기 위해 모든 스크립트에 더미 문을 넣습니다.

누구나 전에이 문제가 있었습니까? 나는 완전히 엉망이었고 Google이 아직 도움이되지 않았는지 확인했습니다. 미리 감사드립니다.

답변

6

가능성은 SQL 파일이 BOM으로 유니 코드로 작성되었으며, mysql이 해석 할 수 없습니다.

그러면 증상을 설명 할 수 있습니다.

해결책은 괜찮은 편집기에서 열어서 그것을 사용하지 않고 다시 저장하는 것입니다.

VIM의 예 :

포스 BOM 제거

:set nobomb 

저장하고

:x! 
+0

가 어떻게 제대로 BOM없이 파일을 저장합니까 종료? Visual Studio 2008, Notepad, SciTE 및 vim을 사용하여 이러한 파일을 다시 저장하려고 시도했지만 여전히 동일한 오류가 발생합니다. – wai

2

입력 파일에 Unicode BOM이 포함될 수 있습니다.이 파일은 메모장과 같은 일부 프로그램이 파일 형식을 나타 내기 위해 파일의 시작 부분에 놓여 있습니다.