table表查询的问题

pgz_007 2008-05-18 02:57:35
operator是paradox数据库的操作员表,我想在登录的时候让所有用户名都显示在combobox里面。现在操作员表里面有5条记录,也就是有五个用户。
---------------------------------------
在form里面的activate事件里面:

operator.Open;
operator.SetKey;
while not operator.GotoKey do //加上not下面的才能执行
begin
combobox1.Items.Add(operator.fieldbyname('username').asstring);
next;
end;
operator.Close;
-----------------------------------
调试执行的时候打开登录框很慢,好像是死机一样的。记录也不多啊,为什么会这样呢?
...全文
45 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
shuihan20e 2008-05-18
  • 打赏
  • 举报
回复
operator.Next;
blazingfire 2008-05-18
  • 打赏
  • 举报
回复
operator.Open;
while not operator.Eof do//还有记录就循环
begin
combobox1.Items.Add(operator.fieldbyname('username').asstring);
operator.next;//直接next不行的
end;
pgz_007 2008-05-18
  • 打赏
  • 举报
回复
up
pgz_007 2008-05-18
  • 打赏
  • 举报
回复
我是楼主

operator.Open;
while not operator.Eof do//还有记录就循环
begin
combobox1.Items.Add(operator.fieldbyname('username').asstring);
next;
end;
operator.Close;

这样执行的话还是死机不动了 ,去掉 while not operator.Eof do中的not就可以执行,不过combobox中没有用户。
请问是怎么回事啊?死循环了吗?只有五条记录啊...
kaikai_kk 2008-05-18
  • 打赏
  • 举报
回复
LS正确

这里不需要用到SetKey和GotoKey的方法
blazingfire 2008-05-18
  • 打赏
  • 举报
回复
operator.Open;
//operator.SetKey;
//while not operator.GotoKey do //加上not下面的才能执行
while not operator.Eof do//还有记录就循环
begin
combobox1.Items.Add(operator.fieldbyname('username').asstring);
next;
end;
operator.Close;


SetKey
和GotoKey是查找的方法

2,497

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 数据库相关
社区管理员
  • 数据库相关社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧