精华内容
下载资源
问答
  • Java连接access数据库

    2015-02-06 10:56:13
    java连接access数据库,自带Access_JDBC30.jar驱动,有自带数据库,本文是一个完整的类,直接拿去运行就可以,本文旨在帮助那些初学者,配上驱动直接连接,不用在去看那些别人说的怎样怎样配置,简化操作,有需要的...
  • java 连接Access数据库

    2011-10-22 11:21:03
    java 连接Access数据库 程序 数据库自己建立
  • java连接access数据库jdbc驱动包 java连接access数据库jdbc驱动包 java连接access数据库jdbc驱动包 java连接access数据库jdbc驱动包
  • JAVA连接ACCESS数据库

    千次阅读 2015-02-13 16:06:46
    JAVA连接ACCESS数据库非常便捷,一种方式是使用JDBC for ACCESS的专门驱动,在java官网或office官网都有下载,这种方式需加载额外的驱动,不推荐使用,有兴趣的朋友可以试试。 另一种就是使用JDBC-ODBC桥来连接。

    ACCESS数据库虽然在功能和性能上无法和MYSQL、ORACLE等专业数据库相比,但由于安装方便、使用便捷,在JAVA数据学习时可作为临时数据库使用。

    JAVA连接ACCESS数据库非常便捷,一种方式是使用JDBC for ACCESS的专门驱动,在java官网或office官网都有下载,这种方式需加载额外的驱动,不推荐使用,有兴趣的朋友可以试试。

    另一种就是使用JDBC-ODBC桥来连接。使用JDBC-ODBC连接ACCESS数据库,必须要求ACCESS版本与操作系统版本一致,如64位系统安装了32位的ACCESS将连接失败。JDBC-ODBC又可以分为两种方式:直连方式和配置数据源连接方式。

    一、JDBC-ODBC直连ACCESS数据库

    从JDBC-ODBC直连这个名称可以看出,该种方式虽然被称作“直连”,但仍然借助了JDBC-ODBC桥。这种连接仍需要ODBC数据源,只不过数据源在JAVA程序中由代码编写,而不用在系统的“管理工具”中配置了。

    在JAVA代码中如何编写ODBC的ACCESS数据源呢?我们先打开系统中“管理工具”下的“数据源(ODBC)”设置界面:


    从该界面中可以看出,系统中安装了ACCESS后,默认安装了ACCESS的ODBC驱动,驱动程序的名称为“Microsoft Access Driver (*.mdb, *.accdb)",这个名称是我们在JAVA代码中连接ACCESS数据库的关键。(如果安装了EXCEL,同样会默认安装EXCEL的ODBC驱动,名称为"Microsoft Excel Driver (*.xls, *.xlsx, *.xlsm, *.xlsb)",同样可以使用此名称连接EXCEL数据库)。

    我们通过下面的程序展示一直如何直连ACCESS数据库:

    import java.sql.*;
    
    public class ConnectAccess
    {
    	public static void main(String[] args) throws Exception
    	{
    		String driver="sun.jdbc.odbc.JdbcOdbcDriver";
    		String url="jdbc:odbc:driver={Microsoft Access Driver (*.mdb, *.accdb)};DBQ=./mytest.accdb";
    		String user="";
    		String pass="";
    		//1.加载驱动。
    		Class.forName(driver);
    		//2.使用DriverManager获取数据库连接,
    		Connection conn = DriverManager.getConnection(url,user,pass);
    		//3.使用Connection来创建一个Statment对象
    		Statement stmt = conn.createStatement();
    		//4.执行SQL语句。
    		ResultSet rs = stmt.executeQuery("select * from 学生信息表 ");
    
    		while(rs.next())
    		{
    			System.out.println(rs.getInt(1) + "\t"
    				+ rs.getString(2) + "\t"
    				+ rs.getInt(3) + "\t"
    				+ rs.getDate(4));
    		}
    		if (rs != null)
    		{
    			rs.close();
    		}
    		if (stmt != null)
    		{
    			stmt.close();
    		}
    		if (conn != null)
    		{
    			conn.close();
    		}
    
    	}
    } 
    
    程序中所需的ACCESS数据库名称为mytest.accdb,其中“学生信息表”如下:
    学生信息表
    ID姓名学号出生日期
    1张三202015/1/5
    2李四302012/11/7
    3王五402011/5/8
    4赵六502009/3/20

    其中ID字段为自动编号,姓名字段为文本,学号字段为数字,出生日期字段为时间/日期。

    从该代码中可以看出

    1、加载的数据库驱动为sun.jdbc.odbc.JdbcOdbcDriver,即jdbc-odbc桥驱动

    2、连接的数据库字符串为jdbc:odbc:driver={Microsoft Access Driver (*.mdb, *.accdb)};DBQ=./mytest.accdb

    其中jdbc:odbc:driver指定连接odbc驱动,它指向的正是刚才我们在系统ODBC配置界面中看到的ACCESS的ODBC驱动:Microsoft Access Driver (*.mdb, *.accdb)。要注意的是,该驱动名称要和ODBC配置界面中的驱动名称完全一致,即在Driver后有一个空格,在*.mdb和*.accbd间有一个空格,这两个空格是必不可少的,否则会出现如下编译报错:

    后面的DBQ字符串指向的是实际的ACCESS数据库实体文件,可以使用绝对路径指定,也可以使用相对路径指定。但是要注意的是,如果使用相对路径指定当前目录,必须使用“./ XXX.accdb”的形式,否则会出现如下编译报错:


    如果编写正确,运行结果如下:


    这样我们通过JDBC-ODBC桥直连ACCESS数据库成功。

    二、通过JDBC-ODBC桥连接ODBC数据源方式连接

    这种方式即最基本的连接ODBC数据源方式

    1、在系统ODBC配置面板中添加一个用户或系统数据源,输入名称后选择ACCESS源文件:


    2、在JAVA程序中使用数据源名称进行连接,只需将原代码中的连接字符串jdbc:odbc:driver={Microsoft Access Driver (*.mdb, *.accdb)};DBQ=./mytest.accdb改写为:

    jabc:odbc:test即可,这里的test就是ODBC中的ACCESS数据源名称。

    展开全文
  • Java 连接 Access 数据库

    千次阅读 2012-02-27 11:23:46
    测试代码如下: ... * @描述: TODO java连接Access数据库 * * * 建立Access数据库: * * 1.建立Access数据库db.mdb,并创建tUser表,字段有两个: ID字段和Password字段。 * 2.打开控制面板 ->

    测试代码如下:


    package com.songyanjun.util;
    
    import java.sql.*;
    
    /**
     * @描述: TODO java连接Access数据库 
     * 
     * <p>
     * 建立Access数据库:
     * 
     * <br>1.建立Access数据库db.mdb,并创建tUser表,字段有两个: ID字段和Password字段。</br> 
     * <br>2.打开控制面板 -> 管理工具 ->  数据源(ODBC), 选择"系统DSN", 也可以选择"用户DSN"选项卡, 系统的DSN对每个用户都适用可避免调试时出现的权限问题,单击“添加”,
     * 		 选择“Driver do Microsoft Access (*.mdb)”,点击"完成", 弹出的对话框里将"数据源名"一项给你的数据源取个名字,比如MyDataBase 。
     * 		 点"选择",找到你刚刚建立的数据库文件db2010.mdb,如此一个ODBC数据源就配置好了。
     * 		(此处的数据文件我是用Office2010创建的,注意创建的时候必须使用Office兼容模式。否则连接不上的)
     * </p>
     * 
     * <br>Java与Access数据库的连接:</br>
     * <p>
     * 	JDBC, 全称为Java DataBase Connectivity standard, 它是一个面向对象的应用程序接口(API), 通过它可访问各类关系数据库。JDBC也是java核心类库的一部分。 
     *  JDBC的最大特点是它独立于具体的关系数据库。与ODBC (Open Database Connectivity)类似, JDBC API 中定义了一些Java类分别用来表示与数据库的连接(connections), 
     *  SQL语句(SQL statements), 结果集(result sets)以及其它的数据库对象, 使得Java程序能方便地与数据库交互并处理所得的结果。
     *  使用JDBC, 所有Java程序(包括Java applications , applets和servlet)都能通过SQL语句或存储在数据库中的过程(stored procedures)来存取数据库。
     *  要通过JDBC来存取某一特定的数据库,必须有相应的JDBC driver,它往往是由生产数据库的厂家提供,是连接JDBC API与具体数据库之间的桥梁。 
     *  通常,Java程序首先使用JDBC API来与JDBC Driver Manager交互,由JDBC Driver Manager载入指定的JDBC drivers, 以后就可以通过JDBC API来存取数据库。 
     *	JDBC driver 是用于特定数据库的一套实施了JDBC接口的类集。  "JDBC-ODBC bridge driver"这种类型的driver能使客户端通过JDBC调用连接到一个使用ODBC driver的数据库。使用这类driver需要每个客户端机器都装上数据库对应的ODBC driver,但该ODBC driver不一定要跟Java兼容。
     * </p>
     * 
     * <br> (Access中将用到的数据库名称为db,表为tUser)</br>
     * <p>
     *      1. 首先使用Java自带的Class类中的forName静态方法加载驱动程序. <br> Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); <br>
     *      2. 然后就是连接数据库了,这里要用到java.sql包中的Connection类声明一个对象,再用类DriverManager调用它的静态方法getConnection创建这个连接。 <br>
     * 			
     * 				Connection con=DriverManager.getConnection("jdbc:odbc:数据源名字","数据源用户名","数据源密码");
     *
     * 				<br> 例如:  String sourceDB="jdbc:odbc:MyDataBase"; 
     * 				<br> 	   Connection con=DriverManager.getConnection(sourceDB,"db2010","pass"); 
     * 
     * 				<br> 注释: 三个字符串分别为:sourceDB,"db2010","pass",如果没有密码就为: "" <br>
     * 
     * 		3.  创建Statement对象,利用Statement对象来传送SQL命令给数据库执行SQL命令。
     *		 	此时就要用到 Statement接口类中的 executeQuery 或 executeUpdate 的方法, 
     *		 	executeQuery 方法需要一个字符串参数,Statement会将这个字符串返回数据库,数据库就会执行这个字符串所代表的SQL命令并将返回结果, 最后将操作结果以 ResultSet 对象返回程序.
     * </p>
     * 
     * @类名称: Access
     * @作者: 宋延军
     * @邮箱: songyanjun_stars@126.com
     * @日期: Feb 27, 2012 9:19:09 AM
     */
    public class Access {
    
    	/**
    	 * @描述: TODO  java连接Access数据库 测试入口
    	 * 
    	 * @标题: main
    	 * @设定:
    	 * @param args
    	 * @返回类型: void
    	 */
    	public static void main(String[] args) {
    
    		Connection con;
    		
    		Statement sql;
    		
    		ResultSet rs;
    
    		try 
    		{
    			//加载Access数据库驱动程序
    			Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
    		}
    
    		catch (ClassNotFoundException e) 
    		{
    			System.out.println("" + e);//控制台打印异常
    		}
    
    		try 
    		{
    			//DriverManager.getConnection("指定连接数据源","数据库名称","数据库密码");  如果没有密码则空 DriverManager.getConnection("指定连接数据源","数据库名称","")
    			con = DriverManager.getConnection("jdbc:odbc:MyDataBase", "db20101.mdb", "pass");
    
    			sql = con.createStatement();
    
    			rs = sql.executeQuery("Select * FROM tUser");
    
    			while (rs.next()) 
    			{
    				String ID = rs.getString(1); // 获得数据库第一列
    
    				String Uid = rs.getString(2);
    
    				System.out.println("主键ID: " + ID); // 输出信息
    
    				System.out.println("用户ID: " + Uid);
    			}
    			con.close();//关闭连接
    
    		}
    		catch (SQLException e)
    		{
    			System.out.println("" + e);//控制台打印异常
    		}
    
    	}
    
    }
    

    Over!!!

    展开全文
  • Java连接Access数据库

    万次阅读 多人点赞 2017-11-21 22:16:39
    JDK1.7以下连接Access:ODBC连接方式 使用的工具 java JDK 1.7; Access 2013; ODBC数据源; 数据库结构 建立数据库shop,在其中添加表goods,表结构如下: 数据如下: 建立ODBC数据源:控制面板-->管理...
    • JDK1.7以下连接AccessODBC连接方式
      • 使用的工具
        • java JDK 1.7;
        • Access 2013;
        • ODBC数据源;
      • 数据库结构
        • 建立数据库shop,在其中添加表goods,表结构如下:

    • 数据如下:

    • 建立ODBC数据源:控制面板-->管理工具-->数据源(odbc)

      

      

      

    • 具体代码:目前环境是JDK1.8,下列代码没有测试

    import java.sql.Connection;

    import java.sql.DriverManager;

    import java.sql.ResultSet;

    import java.sql.Statement;

    import java.util.Date;

    public class Example11_1 {

    public static void main(String args[]) throws Exception {

    Connection con = null;

    Statement sql;

    ResultSet rs;

     

    Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

    // ODBC连接数据源的方式

    con = DriverManager.getConnection("jdbc:odbc:myData","","");

    // java代码直接连接access文件

    // con = DriverManager.getConnection("jdbc:odbc:Driver={Microsoft Access Driver (*.mdb)};DBQ=shop.mdb","","");

     

    sql = con.createStatement();

    rs = sql.executeQuery("SELECT * FROM goods WHERE price>0");

    while(rs.next()) {

    String number = rs.getString(1);

    String name = rs.getString(2);

    Date date = rs.getDate("madTime");

    double price = rs.getDouble("price");

    System.out.printf("%-4s",number);

    System.out.printf("%-6s",name);

    System.out.printf("%-15s",date.toString());

    System.out.printf("%6s\n",price);

    }

    con.close();

    }

    }

    • 在java代码中建立Jdbc-Odbc桥接器,代码是:
      • Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
    • 连接数据库,这里要用到java.sql包中的Connection类声明一个对象,再用类DriverManager调用它的静态方法getConnection创建这个连接。
      • Connection con=DriverManager.getConnection("jdbc:odbc:数据源名字","数据源用户名","数据源密码");
    • JDK1.8连接Access
      • 说明:JDK1.8不再包含access桥接驱动,所以要手动引入Access驱动包
      • 引入了jar包后,相关的调用类也发生了变化,改变如下:黄色高亮为改变部分;

    package hey.up;

      

    import java.sql.Connection;

    import java.sql.DriverManager;

    import java.sql.ResultSet;

    import java.sql.SQLException;

    import java.sql.Statement;

      

    public class JDBCAccess {

    public static void main(String[] args) {

    // url表示需要连接的数据源的位置,此时使用的是JDBC-ODBC桥的连接方式,url是"jdbc:odbc:数据源名"

    String url = "jdbc:Access:///d:/a1.mdb";

    try {

    Class.forName("com.hxtt.sql.access.AccessDriver");

    Connection conn = DriverManager.getConnection(url);

    Statement stat = conn.createStatement();

    String sql = "select * from goods";

    ResultSet rs = stat.executeQuery(sql);

    while(rs.next()){

    System.out.println(rs.getString(2));

    }

    } catch (ClassNotFoundException | SQLException e) {

    // TODO Auto-generated catch block

    e.printStackTrace();

    }

    }

    }

    • 效果
    • 注意:网上还有一种将Access_JDBC30.jar放入JDK中的lib文件下,利用classpath系统变量来引用,这样就省去了将jar包引入项目的步骤。但此方式我没有测试通过,所以只是简单记录下来操作步骤;
      • 把Access_JDBC30.jar放到JDK的lib里;
      • 添加了以后,修改CLASSPATH,环境变量的值需要加上这个jar包,路径为驱动包的绝对路径,例如C:\ProgramFiles\Java\jre1.8.0_65\lib\Access_JDBC30.jar,添加完后,需要重启电脑。[如果CLASSPATH中已有值,在最后添加就行,不同值之间添加分号;]一定要重启电脑!
    展开全文
  • 主要为大家详细介绍了java连接Access数据库的方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
  • 主要介绍了Java 连接Access数据库的两种方式,本文着重讲解使用JDBC连接操作Access数据库,需要的朋友可以参考下
  • java连接Access数据库

    2017-08-31 18:07:43
    在Javaweb中,access数据库其实没有什么使用量,但是当项目需要兼容以前的c/s系统的时候,可能就会要求从曾经使用的access数据库中同步数据,所以,适当了解这个功能还是很有必要的。 首先,实现java和access之间...

    在Javaweb中,access数据库其实没有什么使用量,但是当项目需要兼容以前的c/s系统的时候,可能就会要求从曾经使用的access数据库中同步数据,所以,适当了解这个功能还是很有必要的。


    首先,实现java和access之间的连接,网上很多都说jdbc:odbc的桥接方式,可是万恶的java8已经不再支持这种连接方式,所以给大家推荐以下两种方式。


    1、通过加载AccessDriver驱动来连接数据库,该方法需要引入一个jar包(下载地址Access_JDBC30.jar),且该jar包只能通过手工添加的方式添加到我们的lib或者jdk中。

    具体代码

     //加载数据库驱动
            Class.forName("com.hxtt.sql.access.AccessDriver");
    //        //拼接数据库连接url
           String dbur1 = "jdbc:Access:///" + filePath + fileName;
    //        //连接数据库
            Connection conn = DriverManager.getConnection(dbur1, "username", "password");
           Statement stmt = conn.createStatement();
           ResultSet rs = stmt.executeQuery("select * from " + tablename);
    形式和jdbc连接如出一辙,后面遍历rs即可取得所需的数据,我的项目需求是前端页面展示,所以我会将数据先遍历赋值给一个obect对象,然后添加到list中返回前端。

    2、现在项目基本上都是通过maven来管理我们的依赖了,现在给大家介绍一种通过pom.xml直接引入文件就能使用的方式

    <!--连接access数据库-->
    		<dependency>
    			<groupId>net.sf.ucanaccess</groupId>
    			<artifactId>ucanaccess</artifactId>
    			<version>3.0.2</version>
    		</dependency>
    将以上代码添加到pom.xml中,然后

     Class.forName("net.ucanaccess.jdbc.UcanaccessDriver");
           String dbur1 = "jdbc:ucanaccess://" + filePath + fileName;
            Connection conn=DriverManager.getConnection(dbur1, "username", "password");
            Statement stmt = conn.createStatement();
    和方法一除了加载的驱动不一样,其他都是对数据库的操作,基本一致。

    以上两个方法亲测有效,实际开发中推荐第二种,通过maven管理依赖,具体原因你懂的。



    展开全文
  • java连接access数据库的三种方式以及远程连接

    万次阅读 多人点赞 2017-11-22 16:59:53
    java连接access数据库,网上的内容很多,尝试的过程中也会遇到各种问题,没有特别好的介绍,所以自己想总结一下,日后备用。 这里需要提前说明下,win7系统32bit和64bit默认安装的access都是32bit的,但是如果是64...
  • java连接ACCESS数据库

    千次阅读 热门讨论 2016-09-28 15:53:52
    连接ACCESS的.mdb文件之前,需要向工程引进一些JAR包,相关jar包截图如下:  上图所有jar包下载地址:http://download.csdn.net/detail/qq_21163257/9642191  在引进相关jar包之后,最重要的一步是,为Access...
  • java连接access数据库

    2015-10-21 17:11:00
    为什么提示Class.forName(sun.jdbc.odbc.JdbcOdbcDriver); 这条语句“未出现的异常类型”啊,我是照书上写的啊
  • java连接Access数据库小例子 解压后导入到MyEclipse可直接使用
  • 这个文件是用来帮助Java连接Access数据库的应用工具!
  • java连接Access数据库源码。喜欢的朋友可以尽情下载,想用哈。不用客气哦。

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 80,190
精华内容 32,076
关键字:

java连接access数据库

java 订阅