Задать вопрос
Javasavr
@Javasavr

Как выполнить INSERT в таблицу со спец символами через bash скрипт?

Здравствуйте, у меня есть проблема, мне нужно выполнять INSERT в таблицу MySQL через скрипт bash, но INSERT нужно выполнять в таблицу со спец символами, все мои попытки закончились неудачей, я искал на stackoverflow, пытался использовать ` для таблицы и колонок, буду благодарен за помощь в моей проблеме, вот как я пытался использовать INSERT в своем скрипте:
INSERT INTO `ener-data`(`id`, `date`, `v-out-sun`, `a-out-sun`, `v-out-h`, `a-out-h`, `in1`, `in2`, `in3`, `in4`, `in5`) VALUES (null,'$date', и.т.д)
  • Вопрос задан
  • 259 просмотров
Подписаться 1 Средний 2 комментария
Решения вопроса 1
saboteur_kiev
@saboteur_kiev Куратор тега Linux
software engineer
В одинарных кавычках можно передавать символы как есть
В двойных - некоторые сохраняют специальное значение ($, \)
бэкслеш экранирует один следующий символ, если это спецсимвол.

Вы не привели примера строки, которая у вас не работает, но на самом деле там несложно.
Можно выносить в отдельный файл, можно делать перенаправление через <
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
ky0
@ky0
Миллиардер, филантроп, патологический лгун
Чтобы не мучаться с экранированием, можно вынести запрос в отдельный от скрипта sql-файл и скармливать его mysql-клиенту.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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