Хранимы процедуры, Как получить набор данных |
Здравствуйте, гость ( Вход | Регистрация )
Хранимы процедуры, Как получить набор данных |
BRE |
29.9.2009, 13:34
Сообщение
#11
|
Профессионал Группа: Участник Сообщений: 1112 Регистрация: 6.3.2009 Из: Ростов-на-Дону Пользователь №: 591 Спасибо сказали: 264 раз(а) Репутация: 44 |
Читал... Флаг проставлен, все прописано... Если чего-то не догоняю - Объясни пожалуйста. Ты устанавливаешь флаг forwardOnly объекту, который будет уничтожен следующей строкой: model->setQuery("{call src_License}"); Эта строка создаст новый объект QSqlQuery у которого этот флаг будет установлен в false (по умолчанию). Попробуй поменять местами строки:
или создавай и устанавливай объект QSqlQuery сам:
Тут есть тонкий момент, если создавать объект QSqlQuery так:
то этот запрос автоматически выполняется (exec). Если нужно сначала установить флаг, а потом выполнить запрос, то нужно сделать примерно так:
Сообщение отредактировал BRE - 29.9.2009, 13:44 |
|
|
amakaro4 |
29.9.2009, 13:41
Сообщение
#12
|
Студент Группа: Новичок Сообщений: 18 Регистрация: 28.9.2009 Пользователь №: 1123 Спасибо сказали: 0 раз(а) Репутация: 0 |
Читал... Флаг проставлен, все прописано... Если чего-то не догоняю - Объясни пожалуйста. Ты устанавливаешь флаг forwardOnly объекту, который будет уничтожен следующей строкой: model->setQuery("{call src_License}"); Эта строка создаст новый объект QSqlQuery у которого этот флаг будет установлен в false (по умолчанию). Попробуй поменять местами строки:
или создавай и устанавливай объект QSqlQuery сам:
Спасибо за терпение... В результате все равно только заголовки, но самое главное я понял... |
|
|
BRE |
29.9.2009, 13:45
Сообщение
#13
|
Профессионал Группа: Участник Сообщений: 1112 Регистрация: 6.3.2009 Из: Ростов-на-Дону Пользователь №: 591 Спасибо сказали: 264 раз(а) Репутация: 44 |
Я там дописал свой предыдущий пост. Посмотри. Думаю в этом дело.
|
|
|
amakaro4 |
29.9.2009, 13:55
Сообщение
#14
|
Студент Группа: Новичок Сообщений: 18 Регистрация: 28.9.2009 Пользователь №: 1123 Спасибо сказали: 0 раз(а) Репутация: 0 |
|
|
|
BRE |
29.9.2009, 14:08
Сообщение
#15
|
Профессионал Группа: Участник Сообщений: 1112 Регистрация: 6.3.2009 Из: Ростов-на-Дону Пользователь №: 591 Спасибо сказали: 264 раз(а) Репутация: 44 |
Я правильно понимаю, что сам запрос отрабатывает нормально и выполняет указанную процедуру?
Попробуй проверить как указанно в документации:
Если сам запрос отработает корректно и вернет нужные данные, тогда будет дальше разбираться. |
|
|
amakaro4 |
29.9.2009, 14:38
Сообщение
#16
|
Студент Группа: Новичок Сообщений: 18 Регистрация: 28.9.2009 Пользователь №: 1123 Спасибо сказали: 0 раз(а) Репутация: 0 |
|
|
|
BRE |
29.9.2009, 14:38
Сообщение
#17
|
Профессионал Группа: Участник Сообщений: 1112 Регистрация: 6.3.2009 Из: Ростов-на-Дону Пользователь №: 591 Спасибо сказали: 264 раз(а) Репутация: 44 |
Упс, это я не досмотрел, что для QSqlQuery не предусмотрен отладочный вывод.
Попробуй посмотреть сам, вместо qDebug() << ql:
|
|
|
amakaro4 |
29.9.2009, 14:41
Сообщение
#18
|
Студент Группа: Новичок Сообщений: 18 Регистрация: 28.9.2009 Пользователь №: 1123 Спасибо сказали: 0 раз(а) Репутация: 0 |
Запускается C:\Qt\2009.03\qt\examples\sql\relationaltablemodel\debug\relationaltablemodel.exe...
false true -1 "1467" "1468" "1469" "1470" "1471" "1472" "1473" "1474" "1475" "1476" "1548" C:\Qt\2009.03\qt\examples\sql\relationaltablemodel\debug\relationaltablemodel.exe завершилась с кодом 0 |
|
|
BRE |
29.9.2009, 14:48
Сообщение
#19
|
Профессионал Группа: Участник Сообщений: 1112 Регистрация: 6.3.2009 Из: Ростов-на-Дону Пользователь №: 591 Спасибо сказали: 264 раз(а) Репутация: 44 |
Запускается C:\Qt\2009.03\qt\examples\sql\relationaltablemodel\debug\relationaltablemodel.exe... false true -1 C:\Qt\2009.03\qt\examples\sql\relationaltablemodel\debug\relationaltablemodel.exe завершилась с кодом 0 Вот тут нужно разбираться, почему QSqlQuery считает ответ не валидным. Возможно дело в функции. Может у камрадов будут мысли по этому поводу, я с ODBC никогда дел не имел. Сообщение отредактировал BRE - 29.9.2009, 14:48 |
|
|
amakaro4 |
29.9.2009, 15:02
Сообщение
#20
|
Студент Группа: Новичок Сообщений: 18 Регистрация: 28.9.2009 Пользователь №: 1123 Спасибо сказали: 0 раз(а) Репутация: 0 |
Запускается C:\Qt\2009.03\qt\examples\sql\relationaltablemodel\debug\relationaltablemodel.exe... false true -1 C:\Qt\2009.03\qt\examples\sql\relationaltablemodel\debug\relationaltablemodel.exe завершилась с кодом 0 Вот тут нужно разбираться, почему QSqlQuery считает ответ не валидным. Возможно дело в функции. Может у камрадов будут мысли по этому поводу, я с ODBC никогда дел не имел. Все равно спасибо... добавил в код вызо first() ql.exec( "{call src_License}" ); ql.first(); true true -1 "1468" "1469" "1470" "1471" "1472" "1473" "1474" "1475" "1476" "1548" опять только колонки |
|
|
Текстовая версия | Сейчас: 27.12.2024, 13:39 |