На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
! ПРАВИЛА РАЗДЕЛА · FAQ раздела Delphi · Книги по Delphi
Пожалуйста, выделяйте текст программы тегом [сode=pas] ... [/сode]. Для этого используйте кнопку [code=pas] в форме ответа или комбобокс, если нужно вставить код на языке, отличном от Дельфи/Паскаля.
Следующие вопросы задаются очень часто, подробно разобраны в FAQ и, поэтому, будут безжалостно удаляться:
1. Преобразовать переменную типа String в тип PChar (PAnsiChar)
2. Как "свернуть" программу в трей.
3. Как "скрыться" от Ctrl + Alt + Del (заблокировать их и т.п.)
4. Как прочитать список файлов, поддиректорий в директории?
5. Как запустить программу/файл?
... (продолжение следует) ...

Вопросы, подробно описанные во встроенной справочной системе Delphi, не несут полезной тематической нагрузки, поэтому будут удаляться.
Запрещается создавать темы с просьбой выполнить какую-то работу за автора темы. Форум является средством общения и общего поиска решения. Вашу работу за Вас никто выполнять не будет.


Внимание
Попытки открытия обсуждений реализации вредоносного ПО, включая различные интерпретации спам-ботов, наказывается предупреждением на 30 дней.
Повторная попытка - 60 дней. Последующие попытки бан.
Мат в разделе - бан на три месяца...
Модераторы: jack128, D[u]fa, Shaggy, Rouse_
  
> Форматирование строки
    Ночи доброй всем.
    Никак не могу найти ответа на нужный мне вопрос, а именно:
    Есть текстовый файл, в котором прописан SQL запрос, в нем применяю '%s', '%d', '%n'.
    После загрузки файла передаю нужные мне параметры через Format().
    Но тут незадача, в моем SQL запросе используется следующего вида строка LIKE '%ПАРАМЕТРЫ%' соответственно в файле получается вот так LIKE '%%s%'.
    И после подстановки параметров через Format, на выходе получаю некорректную для меня строку - "LIKE '%s".
    Как можно подставить символ процента так, чтобы функция Format этот символ не трогала?

    Добавлено
    Нашел временный выход, но меня он не устраивает, нужно чтобы загрузка происходила из файла без добавления дополнительных символов в коде
    SQL текстовый файл:
    ExpandedWrap disabled
      SELECT id FROM category WHERE name LIKE '%s'

    Форматирование, передача параметра
    ExpandedWrap disabled
      sQuery := Format(GetSQLQuery(SQL_CATEGORY_ID_BY_NAME), ['%' + CategoryName + '%']);

    На выходе получается:
    ExpandedWrap disabled
      SELECT id FROM category WHERE name LIKE '%CategoryName%'
    Сообщение отредактировано: DemonXpPro -
      Чёт ничо не понял, если у тебя запрос вида
      SELECT id FROM category WHERE name LIKE '%ПАРАМЕТРЫ%'
      В текстовике сделай
      SELECT id FROM category WHERE name LIKE '%%%s%%'
        Регулярные выражения SQL - может и помогут. Структура данных мне не понята
        Цитата DemonXpPro @
        через Format().
        Версия какая?
          Вопрос решен.
          Спасибо Gonarh, это как раз то, что меня и интересовало.
          0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
          0 пользователей:


          Рейтинг@Mail.ru
          [ Script execution time: 0,0517 ]   [ 17 queries used ]   [ Generated: 25.04.24, 16:13 GMT ]