java类——操作Access数据库

来源:互联网 发布:js特效网站 编辑:程序博客网 时间:2024/04/30 12:26

 package tt;

import java.sql.*;

public class DB_access {
 
 private String user = "";//用户名
 
 private String password = "";//密码
 
 private String host = "";//主机
 
 private String database = "";//数据库名字
 
 /*
 private String url="jdbc:mysql://"+host+"/"+"useUnicode=true&characterEncoding=GB2312";
 */
 
 private String url ="";
 
 private Connection con = null;
 
 private Statement stmt = null;
 
 
 public DB_access(String database) {//重载,直接连接默认数据库系统,只选择数据库名称
  
  //this.host = "192.168.102.114";
  
  this.database = database;
  
  //this.user = "sa";
  
  //this.password = "richer";
  
  //显示中文
  
  this.url = "jdbc:odbc:driver={Microsoft   Access   Driver   (*.mdb)};DBQ = D://new.mdb";
  
  try {
  
    Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
  }
  
  catch (ClassNotFoundException e) {
   
   System.err.println("class not found:" + e.getMessage());
  
  }
  
  try {
  
   con = DriverManager.getConnection("jdbc:odbc:Driver=Microsoft Access Driver (*.mdb);dbq=D://new.mdb");
   stmt = con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,
     ResultSet.CONCUR_READ_ONLY);
  //连接类型为ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY
  
  }
  
  catch (SQLException a) {
  
   System.err.println("sql exception:" + a.getMessage());
  
  }
 
 }

/**

* 返回取得的连接

*/

 public Connection getCon() {
 
  return con;
 
 }
 


/**

* 执行一条简单的查询语句

* 返回取得的结果集

*/

 public ResultSet exeQuery(String sql) {
 
  ResultSet rs = null;
  
  try {
  
   rs = stmt.executeQuery(sql);
  
  }
  
  catch (SQLException e) {
  
   e.printStackTrace();
  
  }
  
  return rs;
 
 }

/**

* 执行一条简单的更新语句

* 执行成功则返回true

*/

 public boolean exeUpdate(String sql) {
 
  boolean v = false;
   try {
  
   v = stmt.executeUpdate(sql) > 0 ? true : false;
  
  }
  
  catch (SQLException e) {
  
   e.printStackTrace();
  
  }
  
  return v;
 
 }
/**

* 执行一条简单的更新语句

* 执行成功则返回true

*/

 public boolean exeInsert(String sql) {

  boolean v = false;
  //Statement stmt = creatStmt();
  try {

   v = stmt.execute(sql) ;
   v = true;
  }

  catch (SQLException e) {

   e.printStackTrace();

  }
  
  if(v)
   Func.cout(sql+"插入成功!");
  else
   Func.cout(sql+"插入失败!");
  return v;

 }

 /**

  * 执行一条简单的更新语句

  * 执行成功则返回true

  */

 public boolean close() {

  boolean v = false;

  try{
              
         if(con!=null){
          stmt.close();
          con.close();
          con=null;
         }
        }
        catch(Exception ee){
         Func.cout("数据库无法关闭,请检查!");
         ee.printStackTrace();
        }

  return v;

 } 

}

原创粉丝点击