4

有谁知道 fox pro dbf 的免费/开源 JDBC 驱动程序?

因为 jdbc-odbc 桥对我不起作用!检查我以前的问题点击这里

4

1 回答 1

0

使用 JDBC ODBC 驱动程序,我从您之前的问题中发现您遇到了“找不到数据源名称”之类的错误。您提供“VFPDS”的 DSN 名称不是在您的控制面板中创建的。

我将向您解释在 Windows 中建立连接所需的步骤。

  1. 通过控制面板创建一个 DSN(数据源名称)。转到 控制面板->管理工具->数据源(ODBC)->用户 DSN->添加->Microsoft FoxPro VFP 驱动程序(*.dbf)->单击 Finsih 按钮

    如果您无法创建 DSN,则需要从MicroSoft 网站下载 Visual Fox Pro 驱动程序

  2. 现在您需要在此处输入 DSN 名称并选择“Database Type->Free Table Directory”。浏览.dbf 文件位置的路径。

  3. 现在在“DriverManager”中使用DSN名称

    Eg.
    Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
    con=DriverManager.getConnection("jdbc:odbc:dsnname");
    
  4. 如果这不起作用,那么您需要从 Microsoft 网站下载新的 ODBC 驱动程序。

我将发布我的代码以使您完全理解。

    package javaapplication2;

  import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;

/**
 *
 * @author Ajeesh
 */

public class JavaApplication2 
{  

public static void main(String[] args) 
{
    Connection con=null;
    Statement st=null;
    ResultSet rs=null;

    try
    {
        Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
        con=DriverManager.getConnection("jdbc:odbc:testdsn");
        st=con.createStatement();
        rs=st.executeQuery("SELECT * FROM TESTFOXD");
        while(rs.next())
        {
            System.out.println("Results Field-1: "+rs.getString("FIELD1"));
            System.out.println("Results Field-2: "+rs.getString("FIELD2"));
        }            

    }
    catch(Exception e)
    {
        e.printStackTrace();
    }
   }
}

这里“TESTFOXD”是我的数据库名称,“testdsn”是我的数据源名称。

于 2013-08-28T13:15:13.530 回答