现在的位置: 首页 > 综合 > 正文

写查询语句出现的问题.显示查不到的数据出错,帮忙看看

2012年09月15日 ⁄ 综合 ⁄ 共 1183字 ⁄ 字号 评论关闭
写查询语句出现的问题.显示查不到的数据出错,帮忙看看 Delphi / Windows SDK/API
http://www.delphi2007.net/DelphiBase/html/delphi_20061205203545276.html
if(form4.RBdepno.Checked)     then  
            begin  
              if   Trim(Edit1.Text)=''   then  
                  begin  
                      MessageDlg('科室编号不能为空!',mtWarning,[mbOK],0);  
                      exit;  
                  end  
                else  
                  begin  
              s:='select   *   from   Depart   where     departID='+edit1.Text;  
              if   (s='')   then  
                    begin  
                          Application.MessageBox('数据库表格指定字段未发现记录!','未发现记录',MB_OK);  
                      end  
                    else  
                    query1.SQL.Add(s);  
                    query1.Open;  
                    end;  
   
   
    if   (s='')   then  
                    begin  
                          Application.MessageBox('数据库表格指定字段未发现记录!','未发现记录',MB_OK);  
  关于这段代码书写,我的本意是想如果查询不到匹配字段,提示"数据库表格指定字段未发现记录!",可运行始终出错,帮忙看看哪里问题该怎么改?

if   (s='')   then  
                    begin  
                          Application.MessageBox('数据库表格指定字段未发现记录!','未发现记录',MB_OK);  
                      end  
  //上面这个判断根本就是多余,因为s绝对不是''----因为你已经在前面赋值了!  
   
   
  应该在query1.open之后写:  
  if   query1.recordcount   <   1   then     未发现记录!

再有,query1.sql.add()之前,应该至少写上:  
  query1.close;  
  query1.sql.clear;

问题解决了,谢谢~

OK,你太利索了!祝贺你!结贴吧!

没想到你结贴也这么快!这是一种好的作风!我喜欢!

query1.close;  
  query1.sql.clear;这个我写在了查询操作之前的..呵呵~谢谢你~  
  因为是新手很多问题都不知道的.所以麻烦你们多帮帮忙了

抱歉!评论已关闭.