小弟要删除数据库中的记录,具体语句如下:
procedure TForm1.Button2Click(Sender: TObject);
var a,b,c,d,e,f,g:string;
begin
    if (not query1.Eof) then
       begin
          if application.MessageBox('是否要删除此纪录?','提示',mb_okcancel)=1 then
              begin
                 with query1 do
                    begin
                       a:=fieldbyname('recmac').AsString;
                       b:=fieldbyname('rectime').AsString;
                       c:=fieldbyname('recstr').AsString;
                       d:=fieldbyname('spname').AsString;
                       e:=fieldbyname('isexe').AsString;
                       f:=fieldbyname('isCancle').AsString;
                       g:=fieldbyname('isreturn').AsString;
                       close;
                       sql.Clear;
                       sql.Add('delete from SpLogin where recmac=:a and rectime=:b and recstr=:c and spname=:d and isexe=:e and iscancle=:f and isreturn=:g');
                       parambyname('a').AsString:=a;
                       parambyname('b').AsString:=b;
                       parambyname('c').AsString:=c;
                       parambyname('d').AsString:=d;
                       parambyname('e').AsString:='';
                       parambyname('f').AsString:='';
                       parambyname('g').AsString:='';
                       execsql
                       open;
                    end              end
       end
       else showmessage('没有可删除的记录')
end;
其中IsExe,IsCancle,IsReturn的值为bit型,希望各位大哥能帮小弟结决,小弟下午要交!!  

解决方案 »

  1.   

    if (not query1.Eof) then
           begin
              if application.MessageBox('是否要删除此纪录?','提示',mb_okcancel)=1 then
                  begin
                     with query1 do
                        begin
                          Delete;
                        end;
                  end;
           end
           else showmessage('没有可删除的记录')
    end;
      

  2.   

    楼上的大哥我用的是query控件
      

  3.   

    对了,你为什么要这样子删除记录呢?
    用soundbug(兼职乞丐) 的方法不是很好吗?
      

  4.   

    用下面的方法可以全删(有点笨)
    query1.first;
    while not query1.eof do 
      query1.delete;
      

  5.   

    是了的,他老是提示table is readonly
      

  6.   

    一条用soundbug(兼职乞丐) 的方法不是很好吗?
      

  7.   

    delete就是删除当前的活动记录!!
      

  8.   

    他总是提示table is readonly
    我才用苯办法的
      

  9.   

    实在不行,你可以看一下你的控件的readonly属性和locktype属性是不是设成readonly了。
    你的意思我不太明白!