![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
![]() |
bayah |
![]()
Сообщение
#1
|
Студент ![]() Группа: Участник Сообщений: 31 Регистрация: 23.11.2009 Пользователь №: 1249 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
Возможно я сошел с ума, но...
Есть таблица.
Таблица, к примеру, заполнена значениями: CODE_D NAME_D 1 alpha 2 beta 3 gama Дальше я делаю запрос:
Если же пытаюсь сделать наоборот - по имени получить код, ничего не выходит:
query.next() возвращает false. Я что-то не понимаю видимо? |
|
|
kibsoft |
![]()
Сообщение
#2
|
Участник ![]() ![]() Группа: Участник Сообщений: 180 Регистрация: 21.7.2009 Из: Самара Пользователь №: 928 Спасибо сказали: 14 раз(а) Репутация: ![]() ![]() ![]() |
Цитата query.exec("SELECT NAME_D FROM DIST WHERE CODE_D = "+id+";"); query.next(); QString a = query.value(0).toString(); query.next() попробуй заменить на query.first(). |
|
|
bayah |
![]()
Сообщение
#3
|
Студент ![]() Группа: Участник Сообщений: 31 Регистрация: 23.11.2009 Пользователь №: 1249 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
Все ясно, разобрались.
Проблема была в том что строка запроса должна была выглядеть так:
Для этого в QT это должно было выглядеть так:
Всем спасибо за внимание._) |
|
|
MoPDoBoPoT |
![]()
Сообщение
#4
|
Участник ![]() ![]() Группа: Участник Сообщений: 172 Регистрация: 7.5.2009 Из: Москва Пользователь №: 738 Спасибо сказали: 44 раз(а) Репутация: ![]() ![]() ![]() |
query.exec("SELECT CODE_D FROM DIST WHERE NAME_D = '"+name+"'"); Лучше использовать QSqlQuery::prepare() + QSqlQuery::bindValue() + QSqlQuery::exec(), чем QString::arg() + QSqlQuery::exec(). При использовании подготовленных запросов: - Исключается возможность SQL-инъекций - Оптимизицация по скорости выполнения запроса на стороне СУБД (в случае, когда используются однообразные запросы - меняются только значения в условии WHERE), но это когда СУБД и драйвер поддерживают |
|
|
Litkevich Yuriy |
![]()
Сообщение
#5
|
![]() разработчик РЭА ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: ![]() ![]() ![]() |
|
|
|
![]() ![]() ![]() |
![]() |
Текстовая версия | Сейчас: 22.9.2023, 16:49 |