adodc1.connectstring="...."        连接好数据库
adodc1.recordsource="DELETE * FROM table"
adodc1.refresh
想删除数据表table中所有记录的方法,逐条删除的方法当数据记录太多时显得很慢,要求用sql实现!
上述方法我试过了,不行啊!求帮忙~谢谢~

解决方案 »

  1.   

    用的adodc和datagrid控件,
    能象connect.Execute "delete * from table"用一条语句删除记录集。
      

  2.   

    dim Db as new adodb.connection
    dim Rs as adodb.recordset
    db.open 
    set rs=db.execute("delete * from table")
      

  3.   

    如果记录很多的话,一种是用楼上的方法,
    还有一种方法, 先drop table,然后再重新create table
      

  4.   

    adodb是不是就是ADODC控件!?用的adodc和datagrid控件.
    若用先drop table,然后再重新create table不太方便,新建表后又要重新增加字段!
    其实我的用意是:当数据表的记录达到一定数量时,就自动将数据库备份到另一个文件,然后将本数据库的所有记录全部快速清除。
      

  5.   

    Adodc与Adodb是相同的机制,但是是不同的概念,
    Adodc以控件的形式展示给用户,Adodb则是以内建代码的形式.
    drop table后再create table不太现实,这样做不是好办法,
    我认为还是使用delete比较好.
    ==============================================
    Dim MaxCount=<你想定义的数据记录最大值>
    ...
    if Adodc1.RecordCount>MaxCount then
       FileCopy "原数据库文件名",(备份数据库文件名)    '可以使用日期/时间组合一个唯一的文件名称
       Dim Conn AS New Adodb.Connection
       Conn.Open "....."    '连接好数据库
       Conn.Execute "Delete from TableName"   '删除数据
       Conn.close
       Set Conn=Nothing
    end if
    adodc1.connectstring="...."        '连接好数据库
    adodc1.recordsource="Select * FROM table"   '查询数据
    adodc1.refresh