| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C++ Builder > Компонент TIBQuery |
| Автор: Oberon83 18.4.2006, 10:16 |
| База данных FireBird 1.5, приложение пишу на С++ Builder с использованием стандартных компонентов доступа к БД - InterBase. Столкнулся со следующей проблемой: при выборке записи (использую компонент TIBQuery) выбирается только одна первая запись из таблицы, остальные в результат запроса не попадают(TIBQuery->RecordCount всегда равен 1, даже если запрос такого вида: SELECT * FROM TABLE, в TABLE лежит 100 записей). Причем, если тот же самый запрос прогнать в IB Expert, то результат правильный, то есть загвоздка не в запросе. Так же использую TIBTransaction, параметры которого стандартные и установлены в ReadCommited (read_committed;rec_version;nowait). В чем может быть проблема? Почему в результате ПРАВИЛЬНОГО запроса выбирается только одна первая запись? С компонентом IBDataSet, то же самое. Заранее благодарен. |
| Автор: _hunter 18.4.2006, 11:00 |
| это нормальное поведение -- чтобы лишние записи по сети не гонять. тут все зависит от того, что тебе нужно. -- если записи посчитать -- лучше COUNT() использовать -- если с записями работать -- смело работай -- никуда они не пропадут -- можеш для проверки цикл со счетчиком прокрутить или FetchAll вызвать. |
| Автор: Oberon83 18.4.2006, 11:50 |
| _hunter, Спасибо. У меня есть поисковый запрос по которому необходимо выбать все записи и отобразить в таблице (для дальнейшей работы), просто когда я работал с MS SQL Server, там по запросу он мне все записи выгружал (только в поробности подключений я не вдавался - прога не моя была, я просто добавил кое-что). |