Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

TDBGrid [D7, XP]


Alex8 ©   (2007-09-03 10:48:00) 

Уважаемые мастера !
 Прошу прощения за глупый вопрос, но
  самостоятельно не могу найти ответа.

 Результаты выборки оператором Select размещаю
в TDBGrid. А вот как прочитать содержимое строки "i"
(или ячейки (i,j)) TDBGrid не знаю.
  Не знаю также как определить число строк в том же TDBGrid ?
 Спасибо.


Вася Правильный   (2007-09-03 12:42:00) [1]


> > Вообщем-то мне нужно просто проверить не пустая ли выборка.
> ДЛя этого есть св-во Eof, значение которого равное False
> сразу после открытия НД однозначно говорит о непустой выборке.

dataset.IsEmpty


Alex8   (2007-09-03 12:18:00) [2]

Тоже правильно. Не сообразил.  Всем Спасибо.


Сергей М.   (2007-09-03 12:12:00) [3]


> Вообщем-то мне нужно просто проверить не пустая ли выборка.


ДЛя этого есть св-во Eof, значение которого равное False сразу после открытия НД однозначно говорит о непустой выборке.


Alex8   (2007-09-03 12:09:00) [4]

Правильно - БД  локальная.
 При этом я использую TTable, но для выборки обращаюсь
к Query и SELECT.  Излишество ? Но мне кажется, что програмное формирование запроса так сделать проще. Может быть я  не прав.

> Но все равно непонятно, зачем  обращаться к записям ....
Вообщем-то мне нужно просто проверить не пустая ли выборка.
 Для этого или RecCount или прочитать 1-ю запись.
А потом должна же быть возможность работать с выборкой.


evvcom   (2007-09-03 11:46:00) [5]


> зачем тебе понадобилось обращаться к записям в выборке по
> их порядковому номеру ..

Да это он только думает, что ему это нужно. Как всегда :)


Сергей М.   (2007-09-03 11:45:00) [6]

И сам БД при этом локальная ?

Тогда вариант с RecordCount и RecNo должен решить задачу.

Но все равно непонятно, зачем тебе понадобилось обращаться к записям в выборке по их порядковому номеру ..


evvcom   (2007-09-03 11:45:00) [7]


> PARADOX

Значит Local SQL используешь


evvcom   (2007-09-03 11:43:00) [8]


> А в какой момент фильтры снимаются после того,
> как SELECT выполнен ?

На русский переведи.
Фильтры снимаются в момент, когда ты их снимаешь. А одеваются, когда ты их одеваешь :)
Судя по тому, что про SELECT ты все-таки знаешь, то знай, что в твой DataSet (какой-нить кверик) приходят уже отфильтрованные на сервере (или локальным SQL) данные и другими они могут стать (снимется фильтр), если ты этот запрос переоткроешь с другими условиями (параметрами). Тогда про Filter и Filtered забудь, это локальная фильтрация. Мой телепатор уловил в твоем вопросе эту идею. Ан нет, оказывается все-таки SQL.


Alex8   (2007-09-03 11:39:00) [9]

> СУБД какая ?
PARADOX


Сергей М.   (2007-09-03 11:35:00) [10]


> Alex8   (03.09.07 11:22) [6]


СУБД какая ?


Alex8   (2007-09-03 11:22:00) [11]

Кажется понял.
DBGrid1.DataSource.DataSet.RecordCount
   или
DBGrid1.DataSource.DataSet.Recno(i) - так ?

А в какой момент фильтры снимаются после того,
как SELECT выполнен ?


evvcom   (2007-09-03 11:13:00) [12]


> Так в DataSet полный набор записей, а в
> DBGrid только отбранные

Значит в DataSet установлено свойство Filter, ну и Filtered разумеется. Тогда в DataSet тоже только отобранные.


RomanH   (2007-09-03 11:10:00) [13]


> Alex8

Сейчас поможем, этот форум дружественный он всем помогает,
пишите какой SQL-запрос отображаете в Gride, и пишите из какого поля необходимо получить значение.


Сергей М.   (2007-09-03 11:05:00) [14]


> в DataSet полный набор записей, а в
> DBGrid только отбранные


В DBGrid данных нет вообще.

Все данные - в Dataset, а грид лишь отображает их визуально.


Alex8   (2007-09-03 11:03:00) [15]

Так в DataSet полный набор записей, а в
DBGrid только отбранные. А что выбрано
как узнать, если я прочитать не могу ?


RomanH   (2007-09-03 10:57:00) [16]

Вам необходимо исапользовать свойства DataSet, FieldValues или FieldByName, а не свойства DBGrid


Наверх

Титульная страница Поиск, карта сайта Написать письмо