一、问题的提出 最近一个项目中遇到ASP对FoxPro库表(*.DBF)的操作问题。现实中确有许多应用软件使用DBF表,如何在网络环境中使用这些数据,使很多朋友一筹莫展。 本人也查了许多资料,没有找到解决方法的详细说明。经过试验,初步解决了这个问题,拿出来和大家分享。 本文试图解决以下问题: 1. ASP联接由FoxPro 生成的自由表(*.dbf文件) 2. 将多种类型的数据及图形文件同时存入dbf表中 (示例程序可从http://www.netop.cc/downloads/dbf.rar得到) 二、环境 Windows2000 + IIS5.0 + IE6.0(SP1) DBF文件为Microsoft Visual FoxPro 6.0 生成的自由表(非dbc库) 三、解决途径 1. 连接 DBF文件的ODBC驱动程序名称为 Microsoft Visual FoxPro Driver,在ASP中,通过Connection对象与其联接,需要注意的是,联接时将DBF所在目录视为库名。以下是具体联接代码: DIM conn,connstr,db db="data" Set conn = Server.CreateObject("ADODB.Connection") connstr = "Driver={Microsoft Visual FoxPro Driver};SourceType=DBF;"&_ "SourceDB=" & Server.MapPath(db) &";Exclusive=No" conn.Open connstr 以上代码中,data为我的DBF文件所在的相对路径(相对于此代码所在的文件),通过Server.MapPath(db)将其转为绝对路径。 http://www.connectionstrings.com 给出了很多类型的库表文件的连接字串,其中对DBF文件,给出的连接字串为: "Driver={Microsoft dBASE Driver (*.dbf)};DriverID=277;Dbq=c:mydbpath;" 我用此连接字串没有连接成功,没有进行进一步测试,有兴趣的朋友可以试一下以上字串。 |