用ADOQuery,插入、删除操作该如何实现?
用普通的sql语句好像不行~~

解决方案 »

  1.   

    我是用tquery和ttable处理dbf的还有,帖一下你的SQL语句看看
      

  2.   

    ADOQuery连接上dbf后,就和操作ado一样
    append,insert,delete
      

  3.   

            sqlstr:= 'insert into GOODS('
                   + ' N_id,'
                   + ' N_barcode,'
                   + ' N_code,'
                   + ' N_goodName,'
                   + ' N_price1,'
                   + ' N_price2,'
                   + ' N_price3,'
                   + ' N_price4) values('''
                   + FieldByName('WPCODE').AsString + ''', '''
                   + FieldByName('TXM').AsString + ''', '''
                   + FieldByName('WPCODE').AsString + ''', '''
                   + FieldByName('WPMC').AsString + ''', '
                   + FieldByName('LS_DJ').AsString + ', '
                   + FieldByName('PF_DJ').AsString + ', '
                   + FieldByName('YS_DJ1').AsString + ', '
                   + FieldByName('YS_DJ2').AsString + ')';
            exesql(ADOQryDbf, sqlstr);procedure exesql(ADOQuery: TADOQuery; sqlstr:string);
    begin
      addsql(ADOQuery,sqlstr);
      ADOQuery.ExecSQL;
    end;procedure addsql(ADOQuery: TADOQuery; sqlstr:string);
    begin
        with ADOQuery do
        begin
          close;
          SQL.Text:= sqlstr;
       end;
    end;
      

  4.   

    procedure addsql(ADOQuery: TADOQuery; sqlstr:string); 
    begin 
        with ADOQuery do 
        begin 
          close; 
          sql.clear;                   //加上这句试试
          SQL.Text:= sqlstr; 
      end; 
    end; 
      

  5.   

    procedure addsql(ADOQuery: TADOQuery; sqlstr:string); 
    begin 
        with ADOQuery do 
        begin 
          close; 
          sql.clear;                   //加上这句试试
          SQL.Text:= sqlstr; 
      end; 
    end; 
      

  6.   

    ado没试过我用tquery  query1.sql.text:= 'insert into yourtable.db ...'; 
      

  7.   

    插入的问题解决了,不是大家想的那样,我的sql语句完全没问题
    而是adoconnection连接的时候没有把只读属性改过来:
      ADOConnectionDbf.ConnectionString:= 'Provider=Microsoft.Jet.OLEDB.4.0;'
          +' Data Source= '+ExtractFilePath(Paramstr(0))+ 'data\; '
          +' Extended Properties=dbase 5.0;'
          //必须把Mode改为ReadWrite,默认为Read
          +' Mode = ReadWrite; Persist Security Info=False';
      

  8.   

    但是删除的问题还是没有解决:用delete语句只能加标记,不能彻底删除~~
      

  9.   

    adoquerysql.text:= 'pack yourtable'
      

  10.   

    看似上述语句不行的,哈哈请看 http://info.8844.com/ViewEntry_14637.html