java可以直接用除了access以外的其它所有数据库,就是access不行 :)
呵呵,说错勿怪,偶尔在书上看到的,access必须用jdbc-odbc桥来用 ...

解决方案 »

  1.   

    //JDBC-直接读取Access数据库.txt/*
      用JDBC来连接数据库有很两种方式,如
      <1>JDBC:ODBC bridge,
      <2>直接连接方式.
      第二种方式有很多好处,它可以独立于依赖于系统的odbc数据源,
      存储数据的database可以自由地移动
    *///MobileDatabase.java
    import java.io.*;
    import java.sql.*;public class MobileDatabase{
     public static void main(String[] args){
      try{
       //Load JDBC driver
       Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
       
       /*这里的数据库的url一定要写正确,这是关键,其中DBQ可以绝对路径,也可以是相对路径,为了体现数据存储路径的/独立性,你可以将数据库copy到不同的位试一下*/
       /*{Microsoft Access Driver (*.mdb)}部分可以在控制面板-ODBC中的Drivers(驱动程序)找到*/
       /*这样其他的数据库也可以通过同样的方式访问,如Excel、FoxPro等*/
       String dbUrl = "jdbc:odbc:driver={Microsoft Access Driver (*.mdb)};DBQ=d:\\testsql1.mdb";
       
       Connection con = DriverManager.getConnection(dbUrl,"","");   
       Statement state = con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
       //执行SQL语句
       String sql = "create table tsc (sno char(5))";
       //ResultSet rs = state.executeQuery(sql);
       state.executeQuery(sql);
       //打印测试
       /*if( rs != null ){
           while( rs.next() ){
              System.out.println("\t" + rs.getString(1));
          }
          rs.close();
          con.close();
       }*/
      }catch(Exception e){e.printStackTrace();}
     }
    }//End class MobileDatabase
      

  2.   

    我试过把数据库文件和程序源文件放在同一路径下,然后
    DBQ=testsql1.mdb
    DBQ=./testsql1.mdb
    DBQ=.\\testsql1.mdb
    都找不到,我又把数据库文件和class文件放在同一路径下, 然后DBQ同上
    还是找不到相对路径是从什么地方开始相对的呢?