1、在表单的unload中:
   select yourtable
   pack
   注意,你的表要用独占方式打开
2、MD allt(STR(year(DATE())))+;
      RIGHT('0'+allt(STR(month(DATE()))),2)+;
      RIGHT(allt(STR(day(DATE()))),2)
   应该你不需要精确到小时吧,如果要的话,后面再使用hour()

解决方案 »

  1.   

    2、MD DTOS(DATE()) 就行了
      

  2.   

    增加-------
    如果包括时间,就用
    MD DTOS(DATE())+CHRTRAN(TIME(1), ":.", ""))
      

  3.   

    liuri,我的第一个问题没解决
    设成独占后,unload时缓冲方面出错
      

  4.   

    pack命令可以在不打开表的情况下使用。对dbc也同样如此。
    帮助中的说明有误,在vfp的勘误文件可以看到这样的说明。
    use in yourtable
    pack yourtable.dbf
      

  5.   

    狼兄好久不见^_^刚试了一下,果然可以,好方法,才知道:)
    楼主可以用这个方法呀,关闭你的表后再
    pack yourtable.dbf,这样也不需要独占打开了
      

  6.   

    向 net_steven(吃素的狼(平平淡淡)) 学习!!!
      

  7.   

    我加了pack table.dbf,运行:致命错误c0000005,VF被关掉,虽然彻底删除了,但是也不行啊
      

  8.   

    出现致命错误不是程序的问题,是VFP本身的问题,具体到你这个问题就是表文件坏了,你试一下先把数据表COPY TO NewName WITH CDX,然后把这个表ZAP一下,最后APPEND FROM NewName,经过这个步骤后应该没有问题了。另外,如果你的VFP没有打过补丁,请升级到Service Pack 5.
      

  9.   

    用zap一样,缓冲的问题
    service pack 5好像有点大,小猫受不了。