使用这句sql.add('delete from t1 where f1='''+edit1.text+'''');用于删除,结果没有效果
改成'''+trim()+'''也不行
用showmesssage()得到delete from t1 where f1='1111'//1111为edit1输入内容
用同样格式我写了Insert语句,完全正确,f1为char型,
直接写sql.add('delete from t1 where f1=1111');是可行的
不知道怎样改,请大家指教

解决方案 »

  1.   

    'delete from t1 where f1='''+edit1.text+''''和'delete from t1 where f1=1111'是不一样的,你的f1是什么类型的啊?如果是字符串类型的话就对了,是数字类型的就错了,应该是
    'delete from t1 where  f1='+edit1.text+''
      

  2.   

    sql.add('delete from t1 where f1=1111');可以
    sql.add('delete from t1 where f1='1111'');能否执行成功,若执行不成功则可以改为
    sql.add('delete from t1 where f1='+edit1.text+'');试一下
      

  3.   

    解决了 不过f1一直是char型
    用一开始的格式怎么写insert就行,写delete就不行了呢
      

  4.   

    楼主:你的ID如果是VARCHAR则改为:
    with ADOQuery1 do
      begin
        close;
        SQL.Clear;
        SQL.Add('delete from data111 where ID ='''+Trim(IDEdit.Text)+'''');
        ExecSQL;
      end;
    如果是INTEGER改为:
    with ADOQuery1 do
      begin
        close;
        SQL.Clear;
        SQL.Add('delete from data111 where ID ='+Trim(IDEdit.Text));
        ExecSQL;
      end;
    呵呵,以前帖子上的