Проблема SQLite-запроса со специальным символом - PullRequest
0 голосов
/ 25 августа 2011

У меня есть функция, которая выполняет запрос к таблице в базе данных SQLite. У меня есть такая, как «как тебя зовут?» . Это хранится в переменной String, скажем v, у меня есть один запрос, такой как "Select * from xyz, где question =" '"+ v +"' ";. Но он выбрасывает исключение рядом с appos. Любое решение будет оценено.

Отображается ли ошибка: во время компиляции: выберите * из xyz где Quesion = 'как вас зовут? «

Ответы [ 4 ]

2 голосов
/ 27 августа 2011

Вы пробовали это

VALUE = DatabaseUtils.sqlEscapeString(VALUE);
"select * from xyz where question="+ VALUE;
1 голос
/ 25 августа 2011

сначала замените char этим

v=v.replaceAll("'","\'");

затем передайте его в вашем запросе

"select * from xyz where question='"+v+"'";

дать выстрел

0 голосов
/ 25 августа 2011

Заменить все одинарные кавычки в v на 2 одинарные кавычки:

String q = "select * from xyz where question = '" + v.replaceAll("'","''") + "'";
0 голосов
/ 25 августа 2011

попробуйте "select * from xyz where question='"+v+"'"

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...