findkey的相关问题(50分)

  • 主题发起人 主题发起人 zhang99
  • 开始时间 开始时间
Z

zhang99

Unregistered / Unconfirmed
GUEST, unregistred user!
我在table中定了两个KEY,希望用findkey判断是否有符合该条件的记录,如找到则把该记录中的某个字段值改变。
用findkey对次索引进行查询时总是报错‘关键字不合法’,求救!
 
為何不用locate?
 
检查属性indexName 和 KeyFieldCount 的值设置是否正确.
find系列函数限制很多,不如用locate.
 
进 IndexDefs 属性看你那个 index 在不在
 
试一下
Table1.findkey(['string1';'string2']);
Table1.findkey(['string1','string2']);
 
可以用if table1.locate(fieldname,value,'') then table1.fieldbyname(fieldname):=updatevalue;
fieldname为你要查找的字段名,
value为你要查找的字段的值,
updatevalue为你要修改后的值。
 
table1.SetKey ;
table1.FieldByName('userid').asstring:=‘123’;
table1.fieldbyname('obj').asstring:=‘qwe’;
if not table1.GotoKey then
begin
table1.Edit;
table1.FieldByName('userid').asstring:=s;
table1.FieldByName('obj').asstring:=str;
table1.Post;
end;
 
table1.locate(userid,12345,options);
options 可以是 loCaseInsensitive, loPartialKey
 
接受答案了.
 
后退
顶部