Контент для базы данных

baracuda

Client
Регистрация
19.06.2013
Сообщения
793
Благодарностей
278
Баллы
63
Только начал работать с SQLite

есть данные. обычное описание.. тип данных стоит TEXT в базе

в описание есть вот такой фрагмент = 'парящими'
Из за данной заразы выпадает ошибка.
95032


убираю одинарные кавычки... всё хорошо.
Можно было бы конечно сделать замену... но у меня в дальнейшем будет сверка текста...

Как решить правильно эту проблему ?
 

djaga

Administrator
Команда форума
Регистрация
26.04.2020
Сообщения
546
Благодарностей
1 125
Баллы
93
Только начал работать с SQLite

есть данные. обычное описание.. тип данных стоит TEXT в базе

в описание есть вот такой фрагмент = 'парящими'
Из за данной заразы выпадает ошибка.
Посмотреть вложение 95032

убираю одинарные кавычки... всё хорошо.
Можно было бы конечно сделать замену... но у меня в дальнейшем будет сверка текста...

Как решить правильно эту проблему ?
Нужно сделать замену на "\'"
Так в базу запишется с "'".

Есть ещё функция MySQL mysql_real_escape_string() для таких нужд.
 
Последнее редактирование:

Astraport

Client
Регистрация
01.05.2015
Сообщения
4 983
Благодарностей
4 432
Баллы
113
Это старая головная боль с SQLite.
Экранирование не помогает. Нужно заменять в тексте один апостроф на два, так например Replace("'","''"). При этом после извлечения из БД будет один апостроф чудесным образом.
 

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)