adoquery!我用adoquery控件进行查询,查找结果(RecordCount)是等于0还是-1呢?

liuchun008 2001-12-25 04:30:28
程序目的是:判断输入的用户名是否存在



dm.adoq_rygl.close;
dm.adoq_rygl.SQL.Clear;
str_sql:='select uses_name from t_rygl where uses_name='''+trim(e_yhm.text)+'''';
dm.adoq_rygl.SQL.Add(str_sql);
showmessage(dm.adoq_rygl.SQL.text);
dm.adoq_rygl.Open ;
showmessage(inttostr(dm.adoq_rygl.RecordCount));
if dm.adoq_rygl.RecordCount=-1 then
begin
//在表中加入记录
dm.adot_rygl.Insert;
dm.adot_rygl.FieldByName('uses_name').asstring:=trim(e_yhm.text);
dm.adot_rygl.fieldbyname('password').asstring:=trim(e_mm.text);
dm.adot_rygl.post;
dm.adot_rygl.close;
dm.adot_rygl.open;
//将用户名加入ListBox_name中
ListBox_name.Items.Add(e_yhm.text);
e_yhm.text:='';
e_mm.text:='';
e_qrmm.text:='';
end
else
showmessage('用户名已经存在!');


当我把条件设为 dm.adoq_rygl.RecordCount=-1 程序可以运行但用户名存在时也可以添加;
当我把条件设为 dm.adoq_rygl.RecordCount=0 程序就跳过执行else 后的代码



???????????????
...全文
189 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
liuchun008 2001-12-25
  • 打赏
  • 举报
回复
还有其他方法可以实现吗?
我是指整个程序啊 判断输入的用户名是否存在
liuchun008 2001-12-25
  • 打赏
  • 举报
回复
用dm.adoq_rygl.IsEmpty问题就解决了啊
谢谢fei1995(飞砂) 
liuchun008 2001-12-25
  • 打赏
  • 举报
回复
可是我用showmessage(inttostr(dm.adoq_rygl.RecordCount));
它的结果是-1啊
Heyongfeng 2001-12-25
  • 打赏
  • 举报
回复
recordcount返回的是检索的记录行数,0表示没有符合条件的记录,它不可能为-1。
王集鹄 2001-12-25
  • 打赏
  • 举报
回复
if dm.adoq_rygl.RecordCount<>0 then
刘志飞 2001-12-25
  • 打赏
  • 举报
回复
dm.adoq_rygl.close;
dm.adoq_rygl.SQL.Clear;
str_sql:='select uses_name from t_rygl where uses_name='''+trim(e_yhm.text)+'''';
dm.adoq_rygl.SQL.Add(str_sql);
showmessage(dm.adoq_rygl.SQL.text);
dm.adoq_rygl.Open ;
showmessage(inttostr(dm.adoq_rygl.RecordCount));
if dm.adoq_rygl.IsEmpty then
begin
//在表中加入记录
dm.adot_rygl.Insert;
dm.adot_rygl.FieldByName('uses_name').asstring:=trim(e_yhm.text);
dm.adot_rygl.fieldbyname('password').asstring:=trim(e_mm.text);
dm.adot_rygl.post;
dm.adot_rygl.close;
dm.adot_rygl.open;
//将用户名加入ListBox_name中
ListBox_name.Items.Add(e_yhm.text);
e_yhm.text:='';
e_mm.text:='';
e_qrmm.text:='';
end
else
showmessage('用户名已经存在!');

刘志飞 2001-12-25
  • 打赏
  • 举报
回复
if dm.adoq_rygl.IsEmpty then

5,392

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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