скрипт bash с вставкой mysql в - делать другие на двойной записи

У меня есть таблица mysql с некоторыми уникальными ограничениями. У меня есть сценарий, который задает некоторые вопросы, а затем вставляет ответы в таблицу mysql.

Я не знаю, как сказать скрипту сделать что-то еще, если существует повторяющаяся запись.

Я хотел бы дать возможность удалить запись и добавить новое или вернуться к началу, снова начните сценарий.

Надеюсь, что это имеет смысл.

Preston

-1
задан 22 January 2018 в 02:46

2 ответа

Я бы предложил запустить запрос, чтобы увидеть, существует ли запись, и тогда у вас может быть какая-то логика bash, чтобы решить, что делать на основе результата запроса. Возможно, что-то вроде этого ...

CHECK_ROW_EXISTS=$(mysql -u dbuser -p --batch -N -e "SELECT COUNT(*) FROM dbname.dbtable WHERE id = ${ID_TO_CHECK}")

Использование --batch и -N приведет к удалению форматирования, чтобы мы могли присвоить результат переменной bash, а затем решить, что делать дальше. [ ! d1]

Другой вариант - проверить код состояния выхода вставки mysql и, если он не удается, решить, что делать дальше.

Дальнейшее чтение: получить результат запроса sql без вывода формат таблицы | Переполнение стека

1
ответ дан 17 July 2018 в 22:30

Я бы предложил запустить запрос, чтобы увидеть, существует ли запись, и тогда у вас может быть какая-то логика bash, чтобы решить, что делать на основе результата запроса. Возможно, что-то вроде этого ...

CHECK_ROW_EXISTS=$(mysql -u dbuser -p --batch -N -e "SELECT COUNT(*) FROM dbname.dbtable WHERE id = ${ID_TO_CHECK}")

Использование --batch и -N приведет к удалению форматирования, чтобы мы могли присвоить результат переменной bash, а затем решить, что делать дальше. [ ! d1]

Другой вариант - проверить код состояния выхода вставки mysql и, если он не удается, решить, что делать дальше.

Дальнейшее чтение: получить результат запроса sql без вывода формат таблицы | Переполнение стека

1
ответ дан 23 July 2018 в 23:09
  • 1
    :) Хороший звонок. Я обязательно попробую это. благодаря – Preston Cole 24 January 2018 в 20:02

Другие вопросы по тегам:

Похожие вопросы: