Обрабатывать записи таблицы базы данных с помощью обратной косой черты?

Мы сталкиваемся со странным крайним случаем, когда мы пытаемся сохранить BLOB-объект JSON в таблице в нашей базе данных, и этот BLOB-объект должен содержать \ персонаж. Таким образом, пользователь должен был войти в \test он должен возвращаться именно так, но вместо этого он возвращается как вкладка, за которой следует «est»

Насколько я могу судить, происходит то, что когда пользователь входит и отправляет "\test" он вычисляется в «\ \ test» (удаляет пробел, не может поставить две обратные косые черты здесь и правильно отображать его?) клиентом, а затем вводится в таблицу. Я могу убедиться, что в SQL, который вызывается для таблицы, есть две обратные косые черты. Когда я смотрю на это в таблице после этого шага спиной к "\test", Когда клиент загружает его снова, он оценивается во вкладке, за которой следует «est».

У нас сложилось впечатление, что вторая обратная косая черта необходима для того, чтобы первая обратная косая черта была экранирована и не оценена, но, возможно, именно это вызывает проблемы? Я полагаю, что при выполнении запроса одна из обратных косых черт все равно экранируется, но я не совсем уверен, что с этим делать. Есть ли что-то, с чем наша база данных справляется с обратными слешами, на которые мы должны обратить внимание? Есть ли способ справиться с этим, что мы не рассмотрели?

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

Версия Postgres, насколько я могу судить через Amazon Aws, составляет 9,3

РЕДАКТИРОВАТЬ
Я думаю, что я отследил эту проблему до строки в нашем PHP-бэкэнде, которую я не совсем понимаю. Сейчас я просматриваю документацию по этому вопросу и помечу это как ответившее, так как убедился, что это не проблема с SQL.

-1

Решение

Блочная цитата Обратная косая черта как — по умолчанию — не имеет особого значения в SQL. Это может быть вызвано тем, какой код обрабатывает эти значения (и отправляет их в базу данных). Смотрите здесь для онлайн-примера: rextester.com/QLLYG57275 — a_horse_with_no_name

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

0

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector