我們在1個月內使用了Flyway,沒有遇到任何問題。Flyway MySQL語法錯誤
但是,今天我試着添加一個很長的遷移腳本(超過1500行),並且遇到了奇怪的MySQL語法錯誤。
我在MySQL Workbench中打開了這個腳本,沒有語法錯誤報告,腳本執行時沒有錯誤。
這個名爲'V10012__insert-acceptance-testing-event-moment-passed.sql'的腳本包含以下指令。
- INSERT語句1個
- INSERT語句2
- ...
- INSERT語句LAST - 1個
- INSERT語句LAST
由MySQL報告的錯誤是以下內容:
[錯誤]由 引起com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException:您的SQL語法中有一個 錯誤;請檢查與您的 MySQL服務器版本對應的手冊,以便在'INSERT INTO video_feedback(id,youtube_video_id)VALUES(1102,/ * id * /' 232行[錯誤] com.googlecode' flyway.core.migration.MigrationException:!!移植到10012 版本失敗,請恢復備份和回滾數據庫 和代碼
報道的「INSERT語句LAST」語句錯誤
但如果我在腳本中反轉'INSERT語句LAST'和'INSERT語句LAST-1',e在'INSERT語句LAST-1'(現在在文件末尾)報告了rror。所以我在'INSERT語句LAST'中沒有錯誤,因爲Flyway成功執行了它。另外,如果現在我從腳本'V10012_ insert-acceptance-testing-event-moment-passed.sql'中完全刪除'INSERT語句LAST'語句,並將該語句放入一個名爲'V10013 _test.sql'flyway成功執行我所有的遷移腳本!
那麼,在我最初的'V10012__insert-acceptance-testing-event-moment-passed.sql'腳本中會出現什麼問題呢?
是否有可能的腳本大小限制?
這裏有一些關於我的環境有用信息:
- 我的腳本中使用大量的/ * * /註釋
- 遷飛Maven插件1.7
- Maven的2.0。3
- 的mysql:mysql的連接器的Java:5.1.21
- 的MySQL 5.5.X
- 的Java JDK 1.7.0_09-B05
- Windows 7的
我有一個類似的問題。你的評論裏面沒有引號嗎? – Tonin