1.为何表索引会出现过时现象,表打不开,而且程序不能运行,提示执行程序有问题。
删除主索引后,表打开了。
2.程序运行后如何捕捉哪个表索引坏了,然后自动修复之。
3.总之大家是如何维护表索引的。备份,出现问题恢复。还是全部删除索引,然后重建。
4.昨天有哪位老兄发个修复工具,还没有收到。
5.大家有什么好的建议,请不吝赐教!  [email protected]

解决方案 »

  1.   

    如果索引失败,应该是表资源不能获得,即使表的记录量很大,慢慢来也可以的,如果你只用delphi写程序操作的话,可能是超时。
    你可以到查询分析器执行试下看。重索引:reIndex
      

  2.   

    到了现在还有人在用 paradox 哈, paradox 跟 foxbase 一样, 如果不是在打开索引情况下进行了 append, delete 就会可能出现 index 过期, 而 bde 又不像原带的工具, 记得n久以前偶还是爱使用只建主键的 paradox
      

  3.   

    决定打开 bde 看了看 paradox, 发现, 看来是 8 行的, 但用 table, 有个 IndexFiles, 你把索引都指定到那个  IndexFiles 应该就可以了
      

  4.   

    to whho ‘应该是表资源不能获得,即使表的记录量很大,慢慢来也可以的’,这里不懂?
    索引失败, 很可能索引没有更新,表打不开。很可能意外掉电,非正常退出程序,原因不祥。
    如何解决,删除索引,重建索引?to comanche ‘决定打开 bde 看了看 paradox, 发现, 看来是 8 行的’,这里不懂?
    paradox 索引为何没有和表一起打开。手动删除索引文件,然后重建,表能打开。
      

  5.   

    有机会看看兄弟的陋作。
    请知之email
      

  6.   

    另外问一下, 楼主更新时有没有用 Database, 并且用了 local transactionDatabase.StartTransaction;
    try
      ...
      Database.Commit
    except
      Database.Rollback
    end;之前用过 paradox, 发生过类似问题, 不记得怎解决了, 但想来想去就是上面这段请知之email 是说交换 mail 哈?? 在下文学能力8行
    [email protected], msn too
      

  7.   

    Database.StartTransaction;
    try
      ...
      Database.Commit
    except
      Database.Rollback
    end;
    用了事务。