Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
|
RazrFalcon |
23.4.2011, 18:10
Сообщение
#1
|
![]() Zombie Mod ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1654 Регистрация: 24.5.2010 Из: Харьков Пользователь №: 1752 Спасибо сказали: 64 раз(а) Репутация: 212
|
Из-за наличия ', вся строка не отображается в таблице. Как экранировать, что ли, все спецсимволы, из-за которых могут быть такие сбои. |
|
|
|
|
silver47 |
23.4.2011, 18:38
Сообщение
#2
|
|
Активный участник ![]() ![]() ![]() Группа: Участник Сообщений: 356 Регистрация: 1.4.2010 Пользователь №: 1584 Спасибо сказали: 40 раз(а) Репутация: 6
|
Для экранирования воспользуйтесь символом \
|
|
|
|
|
RazrFalcon |
23.4.2011, 18:39
Сообщение
#3
|
![]() Zombie Mod ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1654 Регистрация: 24.5.2010 Из: Харьков Пользователь №: 1752 Спасибо сказали: 64 раз(а) Репутация: 212
|
Пробовал, не помогает.
|
|
|
|
|
silver47 |
23.4.2011, 18:46
Сообщение
#4
|
|
Активный участник ![]() ![]() ![]() Группа: Участник Сообщений: 356 Регистрация: 1.4.2010 Пользователь №: 1584 Спасибо сказали: 40 раз(а) Репутация: 6
|
Думал что нужно в Qt заэкранировать. Сейчас только что проверил на своей SQLite никаких проблем не имею с добавлением строки вида Something'Something
Добавляю через запрос вида
Сообщение отредактировал silver47 - 23.4.2011, 18:49 |
|
|
|
|
MoPDoBoPoT |
23.4.2011, 18:47
Сообщение
#5
|
|
Участник ![]() ![]() Группа: Участник Сообщений: 172 Регистрация: 7.5.2009 Из: Москва Пользователь №: 738 Спасибо сказали: 44 раз(а) Репутация: 9
|
Вообще-то, в SQL апостроф экранируется апострофом, то есть должно быть примерно так:
В данном случае в запрос передаются константные строки (твои), поэтому можно обойтись простым экранированием, ну а вообще, лучшей практикой является использование связываемых переменных (биндинг), которые исключают возможные SQL-инъекции. |
|
|
|
|
RazrFalcon |
23.4.2011, 18:54
Сообщение
#6
|
![]() Zombie Mod ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1654 Регистрация: 24.5.2010 Из: Харьков Пользователь №: 1752 Спасибо сказали: 64 раз(а) Репутация: 212
|
Цитата(silver47 @ 23.4.2011, 18:46) Link Добавляю через запрос вида Это помогло, спасибо. Хотя полчаса назад, такая же строка, не срабатывала PS: а где вообще все команды, для управление БД, описаны. Я не про Qt-е, а про И тд.UPD: до этого не работало, потому что выдранная из форму строка была такой:
Сообщение отредактировал RazrFalcon - 23.4.2011, 18:59 |
|
|
|
![]() ![]() ![]() |
|
Текстовая версия | Сейчас: 26.12.2025, 16:37 |