用sql语言
delete tablename;
这就可以了

解决方案 »

  1.   

    应该用drop tablename 在 create table 是最快的如果数据多
    数据少当然用delete tablename如果不这样的话,一个表中有几百万条记录,那你的机器就完啦!哈哈一口气添加20万条记录干什么,你用多线成看看,要注意你的循环变量,
      

  2.   

    用Query控件
    Query1.SQL.Text := 'delete from tablename';
    Query1.ExecSQl;
      

  3.   

    query1.close;
    query1.sql.clear;
    query1.sql.add('delete table1')
    query1.excsql;
    query1.open;
    这是删除,增加记录我 不知道有什么办法更快。
      

  4.   

    大家的回答都有问题,没有实践过,如果一个表中有几百万条记录,那你的机器就完啦!
    应该用drop tablename 在 create table 是最快的如果数据多
    数据少当然用delete tablename
    一口气添加20万条记录干什么,你用多线成看看,要注意你的循环变量,
      

  5.   

    增加可能没什么快的吧,删除,你要是当初留了一个这个表的备份空表的话,就行了,把你要删除的表删除,再把空表copy一份过来。
      

  6.   

    删除问题已经解决,用 truncate 现在的问题是添加 20万条记录,而且是没10分钟 搞一次mmd,要死人了,虽然表的字段很少 就两个谁给一个快些的解决方案,再送分400
      

  7.   

    用SQL*LOADER做,具体方法看帮助吧
      

  8.   

    loader 是什么东东啊? 能再具体些么?是从文本文件中导入
      

  9.   

    怎么实现把一个文本文件 batchmove到 一个数据库表中
      

  10.   

    oracle的话用sqlloader
    这个很快
      

  11.   

    回复人: zhptj(好好学习--天天向上) (  ) 信誉:100  2002-06-26 10:59:00  得分:0  
     
     
      oracle的话用sqlloader
    这个很快
      
     
    //数据库是 oracle,问题现在是 sqlloader 怎么用,再400分相送
      

  12.   

    >> 把一个文本文件 batchmove到 一个数据库表中
    用 BatchMove, 源表的 TableType 是 ttASCII.
      

  13.   

    至于复制表, 限于我的见识, 我所知道的最快的方法是用 BDE API: DbiCopyTable()function DbiCopyTable(
      hDb: hDBIDb;                    { 数据库句柄 }
      bOverWrite: Boolean;            { True 则覆盖已有的文件 }
      pszSrcTableName: PChar;        
      pszSrcDriverType: PChar;        { 源表驱动程序类型 }
      pszDestTableName: PChar;
    ): DBIResult; stdcall;
      

  14.   

    呵呵.......我以前做過增加記錄的﹐
    那時要增加約三十几萬﹐最慢的時候用了近二十分鐘﹗(它越加越慢﹐開始一秒鐘能增加百十條記錄﹐后來一秒鐘就只能加三十几條了)后來改盡了﹐在p3 800上只要五分鐘不到(平均每秒鐘能Insert至少約500)。
    具體做法是﹕Query1.SQL.Text+='你的一個增加句子';
    直到Query1的Insert語句約有三十條﹐再對其進行ExecSQL,再清空其語句。我用的是兩層數據庫﹐表也較復雜﹐還有觸發器。遺憾的是我用的是BCB﹐不是Delphi,所以不能把代碼給你。另外﹐如果有循環﹐可以把循環變量放在寄存器中﹐
    也會加快一些速度.不知對你有無幫助
      

  15.   

    使用方法参见 [C:\Program Files\Common Files\Borland Shared\BDE]
    目录下面(可能根据有点出入)的 BDE32.HLP 文件.
      

  16.   

    sql server:
    1、添加20万以上记录
      declare @i int
      set @1=19
      insert tablename values(...)  ---加一条
      while @i>0
       begin
         insert tablename select ... from tablename  ---...里可以规定一些规则,如果用*,那所有记录都是一样的。
         set @i=@i-1
       end
    2、删除一个表中所有的记录
       truncate table tablename
      

  17.   

    添加纪录可不可以考虑用 BDE API 呢, 只是给个建议.
    function DbiInsertRecord (hCursor: hDBICur; eLock: DBILockType; pRecBuff: Pointer): DBIResult stdcall;
    function DbiAppendRecord (hCursor: hDBICur; pRecBuff: Pointer): DBIResult stdcall;
      

  18.   

    使用 BDE API 要 uses BDE.
      

  19.   

    文本文件,各字段是以tab键分开的吧,
    如是这样,直接把文本文件copy到EXCEL
    再从EXCEL导到你的数据库即可,不用写程序了
      

  20.   

    query.sql.add()
    添加多次后,sql就不能执行其中有什么语法规则?
      

  21.   

    删除用   truncate table tablename
    添加想办法用  BatchMove来控制。
      

  22.   

    老兄,batchmove 怎么用?
      

  23.   

    查一下帮助吧.
    需要一源表, 目标表, 然后指定 Mode, 然后 Execute;
      

  24.   

    >> query.sql.add() 添加多次后,sql就不能执行
    那个当然, 需要 Clear();
      

  25.   

    Codebase + DBF 最多也就5秒
      

  26.   

    to 未清醒老兄
       还是这个20万条记录的问题,我想用分批提交 insert into sql语句
    可是实现不了,能给个详细过程么?
      
      

  27.   

    可以用insert into完成,如果数据库是ms Sql我做过,用其他数据库我就不知道了,你说说你用什么数据库
      

  28.   

    把那个文本发过来,今天我帮你搞定![email protected]