小弟最进遇到了一个棘手问题,在配置odbc时我知会在控制面板数据源里进行手动配置,但是项目要求需要用ChooseFile来进行选择,但是如何将选择的路径的数据库附加到控制面板数据源下?

解决方案 »

  1.   

    不用添加到控制面板的数据源里面。这样写就行了。Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
    con = DriverManager.getConnection("jdbc:odbc:DRIVER={Microsoft Access Driver (*.mdb)};DBQ=d:\a.mdb");
      

  2.   

    如果你不是用access的话,用其它的数据库也差不多。只是{Microsoft Access Driver (*.mdb)};这个地方不一样就行了。
      

  3.   

    public class Conn {
    private Connection con;
    private final String driverName="sun.jdbc.odbc.JdbcOdbcDriver";
    private final String urlsoftware="jdbc:odbc:software";

    public Connection getConn(){
    try {
    Class.forName(driverName);
    con=DriverManager.getConnection("jdbc:odbc:DRIVER={Microsoft Access Driver (*.mdb)};DBQ=d:\a.mdb");
    //
    } catch (Exception e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
    } return con;
    }
    }
    这样写有点错误,再看看
      

  4.   

    private Connection con;
    private final String driverName="sun.jdbc.odbc.JdbcOdbcDriver";

    public Connection getConn(String DBname){
    try {
    System.out.println(DBname);
    // Class.forName(driverName);
    Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
    String url="Provider=Microsoft.Jet.OLEDB.4.0;DataSource=d://hgtyr.mdb;Persist Security Info=True;Jet OLEDB:Database Password=%$.<+-@8>m5_7"; System.out.println(url);
    con=DriverManager.getConnection(url);


    } catch (Exception e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
    } return con;
    }
    }
     
    这是我的代码,运行后报错
    java.sql.SQLException: No suitable driver
    at java.sql.DriverManager.getConnection(DriverManager.java:545)
    at java.sql.DriverManager.getConnection(DriverManager.java:193)
    at com.huawei.netcb.Conn.getConn(Conn.java:18)
    at com.huawei.netcb.WriteExcel.getModcode(WriteExcel.java:84)
    at com.huawei.netcb.WriteExcel.writeExcel(WriteExcel.java:165)
    at com.huawei.netcb.WriteExcel.main(WriteExcel.java:226)
    java.lang.NullPointerException
    at com.huawei.netcb.WriteExcel.getModcode(WriteExcel.java:99)
    at com.huawei.netcb.WriteExcel.writeExcel(WriteExcel.java:165)
    at com.huawei.netcb.WriteExcel.main(WriteExcel.java:226)