Подтвердить что ты не робот

Продолжить SQL-запрос даже на ошибках в Workbench MySQL

Я использую Workbench MySQL для импорта файла Joomla sample_data.sql в свою локальную базу данных. Я хочу, чтобы он продолжал импортировать, даже если произошла ошибка, пропуская строку, вызвавшую ошибку.

Есть ли что-то, что я могу префикс SQL для предотвращения остановки запроса при любых ошибках?

4b9b3361

Ответ 1

В MySQL Workbench я отключил опцию в Query для "Stop Script Execution on Errors":

enter image description here

Похоже, ответ Зимбабао тоже будет работать.


В более новых версиях используйте "Toggle, следует ли продолжить выполнение SQL Script после неудачных операторов"

Toggle whether execution of SQL script should continue after failed statements

Ответ 2

попробовать

mysql --force < sample_data.sql 

В разделе справки Mysql говорится:

 -f, --force         Continue even if we get an sql error.

Ответ 3

Вы также можете использовать INSERT IGNORE

INSERT IGNORE INTO mytable
 (primaryKey, field1, field2)
VALUES
 ('1', 1, 2),
 ('1', 3, 4), //will not be inserted
 ('2', 5, 6); //will be inserted