Подтвердить что ты не робот

Связывание Sqlite в строковом литерале

Использование sqlite3, если мой запрос

SELECT * FROM table WHERE title LIKE '%x%'

Он будет соответствовать строкам, содержащим x. Я хочу сделать x привязываемым параметром, например:

SELECT * FROM table WHERE title LIKE '%x?%'

Однако это не работает, поскольку форма '' представляет собой строковый литерал. Есть ли способ избежать ? внутри литерала? Я понимаю, что я могу построить параметр bindable, содержащий %, а затем использовать

SELECT * FROM table WHERE title LIKE ?

но это переносит ответственность в мой код с точки зрения обработки SQL-инъекций, а не интерфейса связывания. Есть ли лучшее решение для этого?

4b9b3361

Ответ 1

SELECT * FROM table WHERE title LIKE '%' || ? || '%';