数据库问题,简单,我在线,马上给分.

如何在tdbgrid显示的纪录中查找某个纪录
以及知道当前指针所指向的纪录
以及其某个字段的内容。
[61 byte] By [boy1-Spike] at [2008-3-15]
# 1
用什么数据控件
如果是query的话用filter就成,至于所指内容如下
query.fieldbyname('f1').asstring;
query.fieldbyname('...').asstring;
query.fieldbyname('fn').asstring;
不足不道,不知对否

lance09-Alex.Best at 2007-10-27 > top of Msdn China Tech,Delphi,数据库相关...
# 2
直接操作它相关的数据控件的数据集,直接使用数据控件进行查找等操作。
rocktan-我是一条狗 at 2007-10-27 > top of Msdn China Tech,Delphi,数据库相关...
# 3
table1.locate('fieldname','text',[]);//查找
table1.fields[i].asstring;
dbgrid1.fields[i].asstring;//不知想实现什么
ssl2000-大宋 at 2007-10-27 > top of Msdn China Tech,Delphi,数据库相关...
# 4
查找可以使用locate或者lookup方法
某字段的内容用FieldByName('字段名称').value
ScoutKing-巴士司机 at 2007-10-27 > top of Msdn China Tech,Delphi,数据库相关...
# 5
1. 首先,不是在DBGid中查找记录,而是在dbgrid->datasource->dataset中查找记录;找到后,dbgrid的指针直接指向那条记录。
2. 如果你的DataSet是Table
Table1.IndexFieldNames:='Field1;Field2;...' //查找时的依据字段名
Table1.FindKey([value1,value2,...]);
//找到后,dbgrid指向该记录,如果有多条符合,指向第一条
3. 如果你的DataSet是Query
Query1.locate('Field1;Field2;...',VarArrayOf([value1,value2,...]),[loPartialKey]);
最后一个参数可选[loPartialKey](字符串可部分匹配),[loCaseInsensitive],[]
Table, ADOTable...也可以Locate,基本一样
# 6
数据库情人,如果愿意请把信箱或QQ留下来,以后联系,谢谢。
boy1-Spike at 2007-10-27 > top of Msdn China Tech,Delphi,数据库相关...
# 7
Table1.FieldByName('Field1').asFloat/asString/asInteger/asDateTime
Table1.Fields.Fields[0].asFloat/asString/asInteger/asDateTime

Query1.FieldByName('Field1').asFloat/asString/asInteger/asDateTime
Query1.Fields.Fields[0].asFloat/asString/asInteger/asDateTime

以上四种方法都可以得到某字段的值
# 8
信箱:zhcharlie@sohu.com 不过我不经常看
在Codefund发短消息不好吗?
# 9
我一直不怕用最恶毒的心态来审视自己。上帝给了我高尚的灵魂,却又给了我恶毒的思想。在生活中做不了坏人,就在网上做个恶棍吧,做个恶棍吧!