import java.sql.*;
public class HelloDB
{
    Connection con;
    Statement  stmt;
    String url;
    public HelloDB() 
    {
        String accessDriver = "sun.jdbc.odbc.JdbcOdbcDriver";
        Class.forName(accessDriver);
        url = "jdbc:odbc:driver={Microsoft Access Driver (*.mdb)};DBQ=C:\\LK\\A\\test.mdb";
    }
    public static void main(String[] args) 
    {
        HelloDB db = new HelloDB();
        try
        {
            db.connect();     
            String update_sql = "UPDATE TESTTABLE1 SET KANA='updated' WHERE TESTNO=4";//UPDATE 
            stmt.executeUpdate(update_sql);
            db.disconnect();
        }
        catch (Exception e) 
        {
            e.printStackTrace();
        }
    }
    public void connect()
    {
        con = DriverManager.getConnection(url, "", "");
        stmt = con.createStatement();
    }
    public void disconnect()
    {
        stmt.close();
        con.close();
    }
}

解决方案 »

  1.   

    哎呀,糟糕,光帖代码了,忘记说问题了!
    问题就是,我想用java连接access数据库,已经实现了。
    现在我想写两个函数,用来打开和关闭数据库。
    怎么弄都弄不好。最后终于写成这样的程序了,只有一个错误,
    说stmt不是static 的,。
    反正就是编译没通过。
    小弟想请这里的哥哥姐姐们帮个忙啊。还有就是这样设计是否符合java的规范阿
    还望指点迷津
    小弟弟我是新手阿
    分可能少了点啊,别介意。最近问了好多问题。没多少了。
    得给以后的问题攒点啊。
    呵呵。。
      

  2.   

    我也不是高手,只是好像碰到过这种问题,似乎一向的做法是把数据库连接的那段程序,即 
    con = DriverManager.getConnection(url, "", "");
            stmt = con.createStatement();放到构造函数里面,这样就ok了
      

  3.   

    楼上的大哥,你好像没有理解我的意思哈
    我是想自己写个函数    public void connect()用来连接数据库的
    要是把con = DriverManager.getConnection(url, "", "");stmt = con.createStatement();放到构造函数里,那还要后面的函数有什么用啊。
      

  4.   

    import java.sql.*;
    class HelloDB{
        Connection con;
        Statement  stmt;
        String url;
        public HelloDB() {
            try{
             String accessDriver = "sun.jdbc.odbc.JdbcOdbcDriver";
             Class.forName(accessDriver);
             url = "jdbc:odbc:driver={Microsoft Access Driver (*.mdb)};DBQ=C:\\LK\\A\\test.mdb";
         }
         catch(Exception e){e.printStackTrace();}
        }
        public static void main(String[] args) {
            HelloDB db = new HelloDB();
            try{
                db.connect();     
                String update_sql = "UPDATE TESTTABLE1 SET KANA='updated' WHERE TESTNO=4";//UPDATE 
                db.stmt.executeUpdate(update_sql);
                db.disconnect();
            }
            catch (Exception e) {e.printStackTrace();}
        }
        public void connect(){
            try{
             con = DriverManager.getConnection(url, "", "");
             stmt = con.createStatement();
         }
         catch(Exception e){e.printStackTrace();}
        }
        public void disconnect(){
            try{
             stmt.close();
             con.close();
            }
            catch(Exception e){e.printStackTrace();}
        }
    }试试