![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() |
fortero |
![]()
Сообщение
#1
|
Участник ![]() ![]() Группа: Участник Сообщений: 132 Регистрация: 4.12.2010 Пользователь №: 2242 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
И с нова я...
Подскажите пожалуйста как оптимально экономично используя ресурсы, и логически правельно узнать количество строк в запросе? У меня есть такой вариант, но что то мне подсказует что он не целисообразно использует ресурсы!
Буду очень признателен если кто-то прольёт свет, спасибо за внимание! |
|
|
![]() |
MoPDoBoPoT |
![]()
Сообщение
#2
|
Участник ![]() ![]() Группа: Участник Сообщений: 172 Регистрация: 7.5.2009 Из: Москва Пользователь №: 738 Спасибо сказали: 44 раз(а) Репутация: ![]() ![]() ![]() |
я думаю, при выборке из БД в какой-нибудь приватный член QSqlQuery пишется количество выбранных строк, после чего при запросе query.size() ты значение этого члена и извлекаешь, т.е. query.size() не считает строки Это верно, если драйвер (и СУБД) поддерживает данную фичу. Подскажите пожалуйста как оптимально экономично используя ресурсы, и логически правельно узнать количество строк в запросе? Обычно пишется SQL-запрос вида:
Если возвращаемое число каким-то образом используется для изменении данных в БД, то запрос на количество записей и изменение данных делается в рамках одной транзакции, чтобы данные были консистентными. |
|
|
fortero |
![]()
Сообщение
#3
|
Участник ![]() ![]() Группа: Участник Сообщений: 132 Регистрация: 4.12.2010 Пользователь №: 2242 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
я думаю, при выборке из БД в какой-нибудь приватный член QSqlQuery пишется количество выбранных строк, после чего при запросе query.size() ты значение этого члена и извлекаешь, т.е. query.size() не считает строки Это верно, если драйвер (и СУБД) поддерживает данную фичу. Подскажите пожалуйста как оптимально экономично используя ресурсы, и логически правельно узнать количество строк в запросе? Обычно пишется SQL-запрос вида:
Если возвращаемое число каким-то образом используется для изменении данных в БД, то запрос на количество записей и изменение данных делается в рамках одной транзакции, чтобы данные были консистентными. Про это я знаю:
Но как извлечь данные из такого запроса не смейтесь я только начинаю в Qt работать и мне пока многое не понятно... И как сделать 2 запроса в рамках одной транзакции? Просто мне внчале надо получить данные о количестве строк для передачи в мою функцию, а лиш потом получать контейнер query... |
|
|
![]() ![]() ![]() |
![]() |
|
Текстовая версия | Сейчас: 11.5.2025, 22:36 |