DBGrid 行数のカウントと任意フィールドの取得

解決


RuSui  2007-05-14 16:56:18  No: 26122  IP: 192.*.*.*

Delphi7 , InterBird でデータベースプログラミングに挑戦しています。

DBGridにDBのテーブル内容を表示させるところまでやっと出来て、
続いて、そのレコード数の取得が出来ずに困っています。

→下記コードではうまくいかない
  ShowMessage(IntToStr(DBGrid1.DataSource.DataSet.RecordCount));

どの様にしたら、レコード数を取得できるのでしょうか?

そして、例えば「3行目5列目のフィールドの値を取得する」方法も、
調べているのですが見つけられません。


とても初歩な部分でつはありますが、ご教示お願いいたします。

編集 削除
RuSui  2007-05-14 16:57:42  No: 26123  IP: 192.*.*.*

↑InterBaseの間違いです  (*-_ゝ-*)ゞポリポリ

編集 削除
HOta  2007-05-14 18:31:20  No: 26124  IP: 192.*.*.*

1.Select Count(*)で行数を得る。
2.Openしたあと、Nextで行数を数える。

3行目5列目のフィールドの値を取得する

IBQuery.Open;
IBQuery.Next;
IBQuery.Next;
値 = IBQuery.Fields[4].Value;
でどうですか?

編集 削除
RuSui  2007-05-14 19:10:54  No: 26125  IP: 192.*.*.*

HOtaさん、早速のアドバイス、ありがとう御座いました。

.count で一発で取得できるわけでなく、回して数えて取得するんですね。
あと、値の取得、うまくいきました。

ありがとうございました。

編集 削除
RuSui  2007-05-14 19:11:46  No: 26126  IP: 192.*.*.*

解決とさせていただきます。

編集 削除
DelPas  2007-05-14 21:00:26  No: 26127  IP: 192.*.*.*

DBGrid1のプロパティ=DataSourceに関連付けされる 「DataSource1.DataSet.RecordCount」で直接
読めませんでしたっけ?

編集 削除
HOta  2007-05-15 07:38:00  No: 26128  IP: 192.*.*.*

RecordCountはRDBMSによってサポートが無い場合もあります。

編集 削除