第一步,创建一个数据库,命名为MyAccessDB.mdb;
新建表,增加表数据
第二步,添加数据源。在“控制面板”中打开“管理工具”找到ODBC数据源,双击打开。在用户DSN选项卡下选择MS Access Database,然后点击右侧“添加”按钮,选择Driver do Microsoft Access(*mdb),然后点击“完成”按钮。在弹出的安装对话框中,填写数据源名称“AccessData”,说明“数据源”,然后点击“选择”按钮,在弹出才对话框中,选择你所创建的数据库所在的目录,然后选中MyAccessDB.mdb,确定,确定,确定。
第三步,完成好以上工作好,就可以打开eclipse进行程序的编写了。现将代码拷贝如下:
(1)编写BaseDao.java
package com.dao; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; /** * 联接数据源 * @author X-rapido */ public class BaseDao { Connection con = null; Statement s = null; ResultSet rs=null; // 得到联接 public Connection getConnection(){ try { // 加载JDBC-ODBC桥驱动程序 Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); // 方式一 通过驱动联接 con=DriverManager.getConnection("jdbc:odbc:driver={Microsoft Access Driver (*.mdb)};DBQ=D:\\Technology\\Access2007\\MyAccessDB.mdb; pwd=liurenkui"); // 方式二 通过数据源与数据库建立连接 //con = DriverManager.getConnection("jdbc:odbc:AccessDatabase"); } catch (Exception e) { e.printStackTrace(); } return con; } /** * 关闭数据源 */ public void CloseConnection(Connection con,ResultSet rs,Statement s){ try { if (rs!=null) { rs.close(); } if (s!=null) { s.close(); } if (con!=null) { con.close(); } } catch (SQLException e) { e.printStackTrace(); } } }
(2)编写测试类
package com.test; import java.sql.Connection; import java.sql.ResultSet; import java.sql.Statement; import com.dao.BaseDao; public class Test extends BaseDao{ Connection con = null; Statement s = null; ResultSet rs=null; /** * 执行查询 */ public void seach(){ try { con=getConnection(); s = con.createStatement();// 创建SQL语句对象 rs=s.executeQuery("select * from employee"); // 查询员工信息 while (rs.next()) { System.out.println("编号:"+rs.getInt("ID")+",姓名:"+rs.getString("name")+",年龄:"+rs.getInt("age")+",入职日期:"+rs.getDate("entryDate")); } System.out.println("__________执行完毕___________ "); } catch (Exception e) { e.printStackTrace(); } finally { CloseConnection(con, rs, s); } } /** * 执行增加 */ public void add(){ try { int result=0; con=getConnection(); s = con.createStatement();// 创建SQL语句对象 result=s.executeUpdate("insert into employee(id,name,age,entryDate) values('9','美眉','19','2012-11-2')"); if (result>0) { System.out.println("插入成功"); } } catch (Exception e) { e.printStackTrace(); } finally { CloseConnection(con, rs, s); } seach(); } /** * 执行修改 */ public void updata(){ try { int result=0; con=getConnection(); s = con.createStatement();// 创建SQL语句对象 result=s.executeUpdate("update employee set age=20 where id=6"); if (result>0) { System.out.println("更新成功"); } } catch (Exception e) { e.printStackTrace(); } finally { CloseConnection(con, rs, s); } seach(); } /** * 执行删除 */ public void delete(){ try { int result=0; con=getConnection(); s = con.createStatement();// 创建SQL语句对象 result=s.executeUpdate("delete from employee where id=6"); if (result>0) { System.out.println("删除成功"); } } catch (Exception e) { e.printStackTrace(); } finally { CloseConnection(con, rs, s); } seach(); } public static void main(String[] args) { Test t=new Test(); t.seach(); // t.add(); // t.updata(); // t.delete(); } }