用一般的边接字串,程序创建DBF表时,生成的DBF表内部格式与低版本的不同,问题如上,帮帮!

解决方案 »

  1.   


    是不是可以把驱动换成VFP2.0的就行了
      

  2.   


       边接字串呢?受不了了,后悔用ADO
      

  3.   

    adoConn.ConnectionString:=
    'Provider=MSDASQL.1;Driver={Microsoft Visual Foxpro Driver};SourceType=DBF;DBQ=e:\DB';假设dbf放在e:\db目录下。
      

  4.   


       sncel(地狱情人-杨勇) :如此会提示找不到可安装的ISAM。
      

  5.   

    换成这样的看看Provider=MSDASQL.1;Extended Properties="Driver={Microsoft Visual Foxpro Driver};UID=;PWD=;SourceDB=e:\DB;SourceType=DBF;Exclusive=No;BackgroundFetch=Yes;Collate=;Null=Yes;Deleted=Yes;"
      

  6.   

    用Extended Properties="Driver={....}"是ADO透过ODBC来访问桌面数据库的标准做法,这个花括号里括起来的就是驱动名,比方说:Microsoft dBase Driver (*.dbf)。
    楼上只位的写法是正确的,但就是欠缺一点:那个(*.dbf)忘写了
      

  7.   


       出错,头都要爆了
       谁有Tdbf3?发一个给我
      

  8.   


      研究了半天DBF文件结构,终于解决了,忘了来结贴
      感谢TDBF的源代码给我的启发!
      

  9.   

    xiangdie(湘蝶):
    能不能说说你对DBF文件结构的研究结果,我也碰到类似的问题了。
      

  10.   


      foxbase数据库文件结构0      1字节   最低两位为版本号
    1-3    3字节   建库年月日
    4-7    4字节   记录个数
    8-9    2字节   结构说明和字段说明,共占的字节数+1
    10-11  2字节   记录字节个数
    12-31  20字节  保留每个字段占32字节,其分配如下0-10   11字节  字段名ASCII码
    11     1字节   字段类型
    12-15  4字节   字段在记录中的位置
    16     1字节   字段长度的2进制
    17     1字节    小数点后位数的2进制
    18-19  2字节   保留
    20     1字节    工作区标志ID
    21-31  11字节   保留文件结束标志  1AH
    第一条记录前有说明部分结尾标志:0DH1.版本号要为03才能用VFP打开,否则不认是个Table
    2.注意字段在中的位置这三个字节
    3.注意结构定义结束标志0DH不知你是什么问题,可以具体点