with query1 do
begin
if recordcount=0 then
...
end

解决方案 »

  1.   

    with query1 do
    //首先确保有sql内容
    Close;
    SQL.Clear;
    SQL.Add('select * from bbb');
    Prepare;
    Open;if query1.recordcount=0 then
    begin
    close;
    sql.clear;
    //插入时要确保bbb预ku两表结构一致,否则须指定字段
    sql.add('insert into bbb select * from ku where sn=:a1');
    query1.parambyname('a1').asstring:=edit1.text;
    query1.prepare;
    execsql;close;
    sql.clear;
    sql.add('select * from bbb order by 品名');
    prepare;
    open;//begin和end不可少
    endelse begin
    close;
    sql.clear;
    sql.add('delete from bbb');
    prepare;
    execsql;
    end;
      

  2.   

    代码风格太差了吧!
    哪么多close,没心情看。