powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / Текст с кавычкой в SQL-запросе [C++Builder]
7 сообщений из 7, страница 1 из 1
Текст с кавычкой в SQL-запросе [C++Builder]
    #33785650
Никс
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Когда я добавляю текст c SQL запросом Format("INSERT INTO t1 VALUES(\'%s\', \'%s\')", ARRAYOFCONST((st1, st2)));
Может возникнуть ситуация когда пользователь введёт в текст кавычку: '. В этом случае получается, что в тексте лишние кавычки естественно запрос не работает. Как исправить?
...
Рейтинг: 0 / 0
Текст с кавычкой в SQL-запросе [C++Builder]
    #33785699
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Попробуйте заменить кавычку на две.
...
Рейтинг: 0 / 0
Текст с кавычкой в SQL-запросе [C++Builder]
    #33785707
Фотография PPA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Никс пишет:
Правильнее всего тут использовать Bind-переменные.
Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
Текст с кавычкой в SQL-запросе [C++Builder]
    #33785747
Никс
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
PPA
Никс пишет:
Правильнее всего тут использовать Bind-переменные.
Posted via ActualForum NNTP Server 1.3
Что ты имеешь ввиду. Если можно с примером.
...
Рейтинг: 0 / 0
Текст с кавычкой в SQL-запросе [C++Builder]
    #33785852
Фотография PPA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Никс PPA
Никс пишет:
Правильнее всего тут использовать Bind-переменные.
Posted via ActualForum NNTP Server 1.3
Что ты имеешь ввиду. Если можно с примером.

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
              TOCommit vCommit;
              TOQuery Query("insert into smart_hints(help_id, name_action,hint_txt) values (:v1,:v2,:v3)");
              Query->DeclareAndSet("v1",otInteger,p_Action->HelpContext);
              Query->DeclareAndSet("v2",otString,p_Action->Name);
              Query->DeclareAndSet("v3",otString,p_Action->Hint.Length()?p_Action->Hint:p_Action->Caption);
              Query->Execute();
              vCommit.Commit();
...
Рейтинг: 0 / 0
Текст с кавычкой в SQL-запросе [C++Builder]
    #33788682
kolobok0
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
НиксКогда я добавляю текст c SQL запросом Format("INSERT INTO t1 VALUES(\'%s\', \'%s\')", ARRAYOFCONST((st1, st2)));
Может возникнуть ситуация когда пользователь введёт в текст кавычку: '. В этом случае получается, что в тексте лишние кавычки естественно запрос не работает. Как исправить?

грамотнее всего - использовать парсинг вводимого текста и найти инфу в доке на Ваш движок БД, об "эскейп" последовательностях. На разных движках различается (если я не глючу). Ну и далее заменять не ликвидные символы на конструкции которые однозначно правильно воспримет Ваш движок БД.


с уважением
(круглый)
...
Рейтинг: 0 / 0
Текст с кавычкой в SQL-запросе [C++Builder]
    #33788779
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не забудьте рассказать пионэру об SQL-инжекции...
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / C++ [игнор отключен] [закрыт для гостей] / Текст с кавычкой в SQL-запросе [C++Builder]
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]