информационная безопасность
без паники и всерьез
 подробно о проектеRambler's Top100
Атака на InternetВсе любят мед
BugTraq.Ru
Русский BugTraq
 Анализ криптографических сетевых... 
 Модель надежности двухузлового... 
 Специальные марковские модели надежности... 
 Очередное исследование 19 миллиардов... 
 Оптимизация ввода-вывода как инструмент... 
 Зловреды выбирают Lisp и Delphi 
главная обзор RSN блог библиотека закон бред форум dnet о проекте
bugtraq.ru / форум / programming
Имя Пароль
если вы видите этот текст, отключите в настройках форума использование JavaScript
ФОРУМ
все доски
FAQ
IRC
новые сообщения
site updates
guestbook
beginners
sysadmin
programming
operating systems
theory
web building
software
hardware
networking
law
hacking
gadgets
job
dnet
humor
miscellaneous
scrap
регистрация





Легенда:
  новое сообщение
  закрытая нитка
  новое сообщение
  в закрытой нитке
  старое сообщение
[Win32] Существует ли в SQL API функция, которая определяет число записей, которое вернул запрос? 05.09.08 08:29  
Автор: Vedrus <Serokhvostov Anton> Статус: Member
<"чистая" ссылка> <обсуждение закрыто>
Пишу на C++ программу, взаимодействующую с БД через ODBC. Всю логику проработал, осталась только одна проблема – та, что в названии темы.
Разобрался. Всем огромное спасибо. Тема закрыта 06.09.08 02:56  
Автор: Vedrus <Serokhvostov Anton> Статус: Member
<"чистая" ссылка> <обсуждение закрыто>
[Win32] Не всегда клиентский курсор (и даже серверный) знает, сколько там записей ваще. 05.09.08 09:06  
Автор: HandleX <Александр М.> Статус: The Elderman
Отредактировано 05.09.08 09:46  Количество правок: 3
<"чистая" ссылка> <обсуждение закрыто>
Ты чего, чистый ODBC API гоняешь? Это путь истинных самураев:-)
Тады вот:

"Return the number of rows affected by an UPDATE, INSERT or
DELETE statement associated with the specified hstmt.

SQLRETURN SQLRowCount(
SQLHSTMT StatementHandle,
SQLINTEGER * RowCountPtr)"

Не смущайся, что в каментах нет селекта. Кое-когда оно выдаёт верную инфу ;-)
А когда происходит это «кое-когда»? 05.09.08 13:13  
Автор: Vedrus <Serokhvostov Anton> Статус: Member
<"чистая" ссылка> <обсуждение закрыто>
А когда происходит это «кое-когда»?

Я исполняю SELECT через SQLPrepare/SQLExecute.
После этого вызываю SQLRowCount . Она возвращает SQL_SUCCESS, но количество выставляет -1… Что делать?
Зачем тебе SQLPrepare? Юзаешь ручное управление транзакциями? 05.09.08 18:05  
Автор: Den <Денис Т.> Статус: The Elderman
<"чистая" ссылка> <обсуждение закрыто>
Самый верный (и самый медленный) способ узнать число селектнутых записей - задать запрос вида select count * from (my_select_request) 05.09.08 15:18  
Автор: Ustin <Ustin> Статус: Elderman
<"чистая" ссылка> <обсуждение закрыто>
:)) Если в синхроне, то достаточно всего лишь выполнить подсчет полученных записей. 05.09.08 18:07  
Автор: Den <Денис Т.> Статус: The Elderman
<"чистая" ссылка> <обсуждение закрыто>
Что есть "синхрон\асинхрон", пояснишь начинающему? 05.09.08 19:03  
Автор: Ustin <Ustin> Статус: Elderman
<"чистая" ссылка> <обсуждение закрыто>
Через ODBC API данные можно получать синхронно и асинхронно. 05.09.08 22:30  
Автор: Den <Денис Т.> Статус: The Elderman
<"чистая" ссылка> <обсуждение закрыто>
Асинхронные операции передачи данных не приоритезируются и передаются получателю по мере готовности. Почти нигде не используются, разве что при запросе к слабым серверам с туевой кучей клиентов на медленных каналах.
Уже тоже до такого додумался, но может быть что-то лучше есть? 05.09.08 15:28  
Автор: Vedrus <Serokhvostov Anton> Статус: Member
<"чистая" ссылка> <обсуждение закрыто>
Угу, одна из опций query(и датасетов) называется типа FetchAll - но при этом ты получаешь те же яйца в профиль (по скорости, а по нагрузке на канал - так ещё больше), по крайней мере для Firebird\Interbase-дельфячих компонент 05.09.08 15:35  
Автор: Ustin <Ustin> Статус: Elderman
<"чистая" ссылка> <обсуждение закрыто>
[Win32] Кажись, еще и в асинхроне... 05.09.08 10:01  
Автор: Den <Денис Т.> Статус: The Elderman
<"чистая" ссылка> <обсуждение закрыто>
Rowcount. 05.09.08 09:04  
Автор: [cb] Статус: Member
<"чистая" ссылка> <обсуждение закрыто>
1




Rambler's Top100
Рейтинг@Mail.ru


  Copyright © 2001-2025 Dmitry Leonov   Page build time: 0 s   Design: Vadim Derkach