2016-01-26 8 views
1

У меня есть следующий запрос:Удаление определенных символов из строки в Java

select *from activo where id_oficina in(22,23) and id categoría = 'in(1,2)' 

Как я могу удалить символ «=» и одиночные кавычки?

Я работаю с kendo Ui, и я не знал, что можно удалить вручную.

+2

'string.replaceAll ("[= ']", "")' –

+0

я не работаю, мой строка кода: filter.replaceAll ("[= ']", ""); –

+0

Вы назначаете новое значение для фильтрации? 'filter = filter.replaceAll (" [= '] "," ");' –

ответ

0

replaceAll предложил @Andy Тернера работы:

String string = "select *from activo where id_oficina in(22,23) and id categoría = 'in(1,2)'"; 
string = string.replaceAll("[=']", ""); 
System.out.println(string); 
1

Не знаю ничего о Kendo, но кажется, что вы пытаетесь ввести 'in (1,2)' в поле, а затем замените его на запрос, вместо того, чтобы просто ввести одно значение.

Прежде всего, следует использовать переменные связывания JDBC, так или иначе, любой оператор SQL, созданный при выполнении конкатенации строк, созревает с дырками безопасности. https://www.owasp.org/index.php/Top_10_2013-A1-Injection

Во-вторых, вы не можете привязывать значения для IN так же, как к одному значению. Теперь у вас всегда может быть предложение IN, и иногда вы свяжете только одно значение. Это было адресовано, прежде: How do I bind an ArrayList to a PreparedStatement in Oracle?

Смежные вопросы