关于DBGRID的一些问题(20分)

  • 主题发起人 主题发起人 天什
  • 开始时间 开始时间

天什

Unregistered / Unconfirmed
GUEST, unregistred user!
我在数据库编程时用到DBGRID,我用SQL选择查询到了符合条件的很多条记录,
DBGRID列出了那些记录,
但我将DBGRID的指示器指到了我更需要的那一条记录上,可是为什么返回的值
却是该表中的第一条记录,
怎么才能把表的指针指到DBGRID的指示器指到了我更需要的那一条记录上.
 
您试一试用Query或Table的Bookmark,您把DBGird的指示器是随着DataSet(Query、Table)
变的。
 
你可以直接取DBGIRD的值,例如DBGRID.COLUMNS[0].ASSTRING
 
移动query的指针,同时取query的当前值就可以了
 
移动数据集的指针,对网格操作是没用的!数据集在什么位置网格就在什么位置!
 
你是不是用的是一个query组件?是不是查询的一个,取返回值得一个?
 
你可能写错语句了!
不可用DBGRID.COLUMNS[0].ASSTRING,
可用DBGRID.datasounce.dataset.fields[0].asstring;
 
我觉得你应该操作数据集,因为DBGrid只是显示的,应该确定你的数据集的指针。数据集
指针在哪里,你的DBGrid显示的就在哪里。
 
你是不是用的DBMS?用Query查询的结果中,RecNo永远是-1吧,所以。。。
 
你是怎么样指到你要的记录上的,用的是什么方法???
用query或者table的locate试试
 
我也碰到过同样的麻烦,recno始终为-1,不明白为什么,但我的解决方法是判断dbgrid的
行号。希望对你能有帮助
 
recno始终为-1,那是因为记录太多了的缘故。记录多了RECNO和RECORDCOUNT都不能返回正确的结果,
要定位记录最好利用BOOKMARK。
 
我是在一个form中用了dbgrid的,我是想在主form中返回上一个form中dbgrid中的
某个字段的值
 
那你去取与这个DBGRID关联的数据集的字段值好了,就象zhangpg说的那样DBGRID.datasounce.dataset.fields[0].asstring,
或者直接用dataset.fieldbyname('字段名').asstring,DBGRID指向哪一条,数据集就会定位倒哪一条,一般在对数据库感应构件操作最好还是
直接对dataset操作。
 
多人接受答案了。
 
后退
顶部