我想把一个数据表里的所有记录一次性清除,并且将数据表的索引回归为零,该如何写呢?

解决方案 »

  1.   

    query1.sql.text :='delete mytable'
      

  2.   

    同意另外
    for i := 0 to table.recordcount do
    begin
      table.first;
      while table.eof do
      begin
        table.deleted;
      end;
    end;
      

  3.   

    用turncate (如果在oracel中)其他的数据库我就不知道了
      

  4.   

    如果你用的是sql 数据库 :
    truncate tabale tablename
    如果是access 就的用delete table
      

  5.   

    用一个SQL语句
    delete from tablename
      

  6.   

    可以有两种方法:
    直接使用 SQL 语句或在数据集中使用 CLEAR 方法,
    以上的两种方法都可以的,而且都比较的简单,
    你可以试试。
      

  7.   

    是要先把表的EXCLUSIVE 属性设为 TRUE 才能执行
    table1.emptytable;
      

  8.   

    这有二种方法,一是用数据库方面的如 DELETE FROM TABLENAME  二是用DELPHI 方面的。如WWWWA(aaaa) 说的
      table1.emptytable;
    全是可以的。
      
     
      

  9.   

    楼主要求的是清空
    楼上各位却极力推崇删除truncate table tablename
      

  10.   

    delete 

    truncate table
      

  11.   

    不好意思,没说清楚,我是用ADO链接ACESS2000数据库的,我不是要删除数据表,而是要清空它,并将索引归零(该数据表中用自动编号字段为主键)。楼上各位的我都试过了,可惜都不行:(
      

  12.   

    同意 mengxianbao1521(代码优化) 
    在此还谢过响马给我的控件。
    我的QQ: 57263731
      

  13.   

    while adotable1.recordcount>0 do
      adotable1.delete;
      

  14.   

    delete  tablename where 1=1
      

  15.   

    清空aceess数据表:
    delete from tablename
      

  16.   

    用ADO链接ACESS2000数据库的,我不是要删除数据表,而是要清空它,并将索引归零(该数据表中用自动编号字段为主键)。
    就是要把自动编号也同时归到从0开始,如何做?