webinar
@webinar
Учим yii2: https://youtu.be/-WRMlGHLgRg

Какие символы не используются в sql?

Есть необходимость хранить в базе json строку в которой будут sql запросы разбитые делиметером, то есть пока вид приблизительно такой:
{
somekey: "somedata",
somesql: "SELECT * FROM 'table' WHERE {someval|someval} LIKE {somedata|some_hren}"
}

Собственно вопрос в том насколько адекватно юзать "{" и "|", какие подводные камни как для sql так и для json. Наверняка я вообще велосипед изобретаю и кто-то может ткнуть носом в уже реализованные решение.
  • Вопрос задан
  • 50 просмотров
Пригласить эксперта
Ответы на вопрос 2
@d-stream
Готовые решения - не подаю, но...
Для полной надежности можно запросы "заворачивать" например в base64|uuencode и т.п. - это защитит от проблем с юникодными символами и т.п.
Ответ написан
@cicatrix
было бы большой ошибкой думать
Экранировать надо одинарные и двойные кавычки. Кажется всё.
Подводный камень здесь другой - зависит конечно от конкретики вашего решения, но у меня сильное предчувствие уязвимости по SQL инъекциям. Вы эти SQL запросы откуда и куда слать собираетесь? Надеюсь не от клиента на сервер?
Ответ написан
Ваш ответ на вопрос

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

Войти через TM ID
Похожие вопросы