Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[3.145.163.58] |
|
Сообщ.
#1
,
|
|
|
Ночи доброй всем.
Никак не могу найти ответа на нужный мне вопрос, а именно: Есть текстовый файл, в котором прописан SQL запрос, в нем применяю '%s', '%d', '%n'. После загрузки файла передаю нужные мне параметры через Format(). Но тут незадача, в моем SQL запросе используется следующего вида строка LIKE '%ПАРАМЕТРЫ%' соответственно в файле получается вот так LIKE '%%s%'. И после подстановки параметров через Format, на выходе получаю некорректную для меня строку - "LIKE '%s". Как можно подставить символ процента так, чтобы функция Format этот символ не трогала? Добавлено Нашел временный выход, но меня он не устраивает, нужно чтобы загрузка происходила из файла без добавления дополнительных символов в коде SQL текстовый файл: SELECT id FROM category WHERE name LIKE '%s' Форматирование, передача параметра sQuery := Format(GetSQLQuery(SQL_CATEGORY_ID_BY_NAME), ['%' + CategoryName + '%']); На выходе получается: SELECT id FROM category WHERE name LIKE '%CategoryName%' |
Сообщ.
#2
,
|
|
|
Чёт ничо не понял, если у тебя запрос вида
SELECT id FROM category WHERE name LIKE '%ПАРАМЕТРЫ%' В текстовике сделай SELECT id FROM category WHERE name LIKE '%%%s%%' |
Сообщ.
#3
,
|
|
|
Регулярные выражения SQL - может и помогут. Структура данных мне не понята
Цитата DemonXpPro @ Версия какая? через Format(). |
Сообщ.
#4
,
|
|
|
Вопрос решен.
Спасибо Gonarh, это как раз то, что меня и интересовало. |