精华内容
下载资源
问答
  • java连接access数据库
    千次阅读
    2021-02-12 12:29:41

    java连接MS Access的两种方式:

    1.JDBC-ODBC

    Java连接Access可以使用MS自带的管理工具-->数据源(ODBC)设置建立连接,这样就不需要导入jar。但是,如此一来程序部署的每个机器上都要进行设置不方面。所以现在不会使用啦。

    2.JDBC

    java也可以和连接其他数据库一样连接MS Access,导入数据库相应的jar包,进行连接。

    java Access JDBC jar包:Access_JDBC30.jar

    具体连接,参考下面代码:

    try {

    ///加载驱动jar

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

    //指定Access数据库文件的位置

    String url = "jdbc:Access:///c:/a/db.mdb";

    //建立连接

    conn = DriverManager.getConnection(url, "username", "password");

    } catch (Exception e) {

    e.printStackTrace();

    }

    其他的查询就和其他的数据库一样,如:https://www.jb51.net/article/68620.htm

    3.说明:

    现在基本不会使用ODBC方式连接数据库,也基本不使用Access,像我今天拿出老以前的程序想跑一跑一看是Access,还是使用JDBC吧。

    更多相关内容
  • java连接access数据库jdbc驱动包 java连接access数据库jdbc驱动包 java连接access数据库jdbc驱动包 java连接access数据库jdbc驱动包
  • 主要为大家详细介绍了java连接Access数据库的方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
  • java连接access数据库

    连接access数据库,网上的内容很多,尝试的过程中也会遇到各种问题,没有特别好的介绍,所以自己想总结一下,日后备用。

    这里需要提前说明下,win7系统32bit和64bit默认安装的access都是32bit的,但是如果是64bit的系统连接access数据库时需要安装64bit的office软件,下面会说到。

    以64bit操作系统为列

    第一种:电脑上配置结合java代码实现

    a.打开目录C:\Windows\System32找到odbcad32.exe文件,双击打开

    b.点击右侧添加按钮,在列表中选择access数据库驱动

    这个地方要注意,使用纯java实现连接access数据库的时候需要写access的驱动,而access的驱动名称是根据这里写的,也就是你本机有的驱动,而不是网上说的什么要有空格,要把*.mdb, *.accdb换成*.mdb或者*.accdb之类。因此这里需要注意。另外还可能有个问题。有可能点击添加的时候这里并没有access驱动,或者报错[Microsoft][ODBC 驱动程序管理器] 未发现数据源名称并且未指定默认驱动程序时,

    这个时候网上下载一个AccessDatabaseEngine_X64.exe,如果是32bit操作系统相应的下载AccessDatabaseEngine_X32.exe即可,点击下载64bit驱动

    c.点击完成出现下列对话框,数据源名称随意填写,说明可有可无,就是对数据源的描述,点击选择按钮选择数据库所在的路径

    d.点击确定按钮后就可以在ODBC数据源管理器中看到添加的数据源

    e.下面是java的代码

    package com.xu.bean;
    
    import java.io.UnsupportedEncodingException;
    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.ResultSet;
    import java.sql.SQLException;
    import java.sql.Statement;
    
    public class ConnectAccessDatabase {
    	public static void main(String[] args) {
    		try {
    			Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
    			String url = "jdbc:odbc:databaseName";//databaseName就是刚刚添加的数据源名称
    			Connection con = DriverManager.getConnection(url, "", "");//没有用户名和密码的时候直接为空
    			Statement sta = con.createStatement();
    			ResultSet rst = sta.executeQuery("select * from demoTable");//demoTable为access数据库中的一个表名
    			if(rst.next()){
    				System.out.println(rst.getString("name"));
    				//解决乱码问题
    //				System.out.println(new String(rst.getBytes("name"), "gbk"));
    			}
    		} catch (ClassNotFoundException e) {
    			e.printStackTrace();
    		} catch (SQLException e) {
    			e.printStackTrace();
    		} /*catch (UnsupportedEncodingException e) {
    			e.printStackTrace();
    		}*/
    		
    	}
    }
    

    然后运行代码即可

    第二种方式:纯jiava实现

    a.这里需要注意的就是url那里,前面也提到过是根据电脑本地有的驱动写的

    package com.xu.bean;
    
    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.ResultSet;
    import java.sql.SQLException;
    import java.sql.Statement;
    
    /**
     * 纯java代码实现 连接access数据库
     * @author xuyl
     *
     */
    public class ConnectAccessDatabase2 {
    	public static void main(String[] args) {
    		try {
    			Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
    			String url = "jdbc:odbc:driver={Microsoft Access Driver (*.mdb, *.accdb)};DBQ=E:\\demo.mdb";
    			Connection con = DriverManager.getConnection(url, "", "");//没有用户名和密码的时候直接为空
    			Statement sta = con.createStatement();
    			ResultSet rst = sta.executeQuery("select * from demoTable");//demoTable为access数据库中的一个表名
    			if(rst.next()){
    				System.out.println("纯java代码实现:" + rst.getString("name"));
    			}
    		} catch (ClassNotFoundException e) {
    			e.printStackTrace();
    		} catch (SQLException e) {
    			e.printStackTrace();
    		}
    		
    	}
    }
    

    b.运行结果

    第三种方式:使用RmiJdbc.jar(也是远程连接的方法)以远程连接为例

    首先下载RmiJdbc.jar

    在放置Access数据库的电脑上配置 1.配置RmiJDbc.jar环境变量(在这之前还需要配置jdk环境,jdk配置可自行百度)​ 解压缩RmiJdbc3.3.zip,将解压出的文件放在任意盘符。右键计算机选择属性 - 选择高级系统设置 - 选择环境变量 - 在系统变量中找到CLASSPATH选中点击编辑按钮在最后面添加%CLASSPATH%;D:\RmiJdbc3.3\RmiJdbc\dist\lib\RmiJdbc.jar(以放在d盘跟目录为例) 2.启动RmiJbdc.jar服务 win + r 建打开运行窗口输入cmd打开命令窗口输入 java -jar D:\RmiJdbc3.3\RmiJdbc\dist\lib\RmiJdbc.jar出现下图所示即配置成功。 

    启动之后需要一直运行。

    3.配置数据源

    根据上面的方法配置好数据源

    4.java代码

    public static String executeQuery(String sql) {
    		log.info("===========executeQuery start=============");
    		String jsonArray = "{";
    		StringBuilder jsonObject = new StringBuilder();
    		Connection con = null;
    		Statement stmt = null;
    		ResultSet rst = null;
    		try{
    			//注册数据提供程序
    			Class.forName("org.objectweb.rmijdbc.Driver").newInstance();
    			//accessDatabase为远程服务器数据源名称
    //			String url = "jdbc:rmi://10.23.16.83/jdbc:odbc:accessDatabase";
    			//生产地址
    			String url = "jdbc:rmi://10.23.10.6/jdbc:odbc:accessDatabase";
    //			String url = "jdbc:rmi://10.23.71.211/jdbc:odbc:demo";
    			//建立连接
    			con = DriverManager.getConnection(url, "", "");
    			stmt = con.createStatement();
    			rst = stmt.executeQuery(sql);
    			if(rst != null){
    				while(rst.next()){
    					String id = rst.getInt("id") + "";
    					String name = new String(rst.getBytes("title"), "gbk");
    					String time = rst.getDate("adate").toString();
    					String filePath = rst.getString("url");
    					jsonObject.append("{\"ID\":\"" + id + "\", \"NAME\":\"" + name + "\", \"FILE_PATH\":\"" + filePath + "\", \"TIME\":\"" + time + "\"}, ");
    				}
    				String temp = jsonObject.toString();
    				temp = temp.substring(0, temp.length() - 2);
    				jsonArray += "\"IS_EMPTY\":\"N\",LIST:[" +  temp + "]}";
    			}else{
    				jsonArray += "\"IS_EMPTY\":\"Y\"}";
    			}
    		}catch(Exception e){
    				log.info("===========executeQuery start=============" + e.getMessage());
    		}finally{
    			try {
    				con.close();
    				stmt.close();
    			} catch (SQLException e) {
    				e.printStackTrace();
    			}
    		}
    		log.info("===========executeQuery end=============");
    		return jsonArray;
    	}

    以上就是三种访问access数据库的方法

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

    2015-02-06 10:56:13
    java连接access数据库,自带Access_JDBC30.jar驱动,有自带数据库,本文是一个完整的类,直接拿去运行就可以,本文旨在帮助那些初学者,配上驱动直接连接,不用在去看那些别人说的怎样怎样配置,简化操作,有需要的...
  • 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管理依赖,具体原因你懂的。



    展开全文
  • 建立数据库 1.首先下载office2016专业版,里面含有Access,百度云下载链接:https://pan.baidu.com/s/1iCLPOrjaV_XOWQoWhCifZA 提取码:vjno ...2.打开Access,新建数据库 点击设计视图,保存表的名字为st...

    建立数据库

    1.首先下载office2016专业版,里面含有Access,具体下载可以百度。
    2.打开Access,新建数据库
    新建数据库
    点击设计视图,保存表的名字为student

    在这里插入图片描述
    建立字段名称,定义主键(主键字段的数据不能出现重复的内容)
    在这里插入图片描述
    返回到数据表视图
    在这里插入图片描述
    输入相应的数据
    在这里插入图片描述

    连接数据库

    我使用的是IDEA,以IDEA演示
    Access驱动文件在点击这里

    首先导入Access驱动文件到idea里面
    1.打开File选项,找到Project Structure
    在这里插入图片描述
    2.找到Global Libraries
    在这里插入图片描述
    3.点击加号
    在这里插入图片描述
    4.找到Acess驱动包的路径
    在这里插入图片描述
    5.点击OK就导入好Access驱动了。

    运行这段代码

    import java.sql.*;
    
    /**
     * @ author Dragon
     * @ version
     */
    
    public class TestConSQL {
        public static void main(String[] args) {
    
            try {
                Class.forName("com.hxtt.sql.access.AccessDriver");//导入Access驱动文件,本质是.class文件
            } catch (ClassNotFoundException e) {
                e.printStackTrace();
            }
            try {
                Connection con = DriverManager.getConnection("jdbc:Access:///C:\\Users\\lenovo\\Desktop\\Datas.accdb","","");
                //与数据库建立连接,getConnection()方法第一个参数为jdbc:Access:///+文件总路径,第二个参数是用户名,第三个参数是密码(Access是没有用户名和密码此处为空字符串)
                Statement sta = con.createStatement();
                ResultSet res = sta.executeQuery("select * from student");
                //向数据库发送executeQuery()方法的数据库语句,对数据库返回的结果放到ResultSet里面
                //注意一定要保证数据库语句的正确性
                while(res.next()){//不断的移动光标到下一个数据
                    System.out.println(res.getString(1)+res.getString(2)+res.getInt(3));
                    //注意如果年龄为数值,需要getInt()
                }
                con.close();//关闭数据库连接
            } catch (SQLException e) {
                e.printStackTrace();
            }
        }
    }
    
    

    运行结果
    123456张三23
    234567李四20
    345678王二21
    456789麻子23

    不同的功能对应不同executeQuery()方法的数据库语句
    Access 2010:

    驱动类:com.hxtt.sql.access.AccessDriver
    连接串:jdbc:Access:///+DatabaseName

    如果是其它数据库:
    SQL SERVER:

    驱动类:com.microsoft.sqlserver.jdbc.SQLServerDriver
    连接串:jdbc:sqlserver://localhost:1433;DatabaseName=test

    ORACLE:
    驱动类:oracle.jdbc.driver.OracleDriver
    连接串:jdbc:oracle:thin:@127.0.0.1:1521:test

    MYSQL:

    驱动类:com.mysql.jdbc.Driver
    连接串:jdbc:mysql://localhost:3306/sample_db?user=root&password=your_password

    展开全文
  • java连接Access数据库的两种方法
  • Java连接Access数据库.pdf
  • JAVA连接ACCESS数据库.pdf
  • JAVA连接ACCESS数据库文件(.mdb/.accdb)所需的jar包
  • Java连接access数据库方法.pdf
  • JAVA连接ACCESS数据库驱动包,不限次,不限记录数,亲测可用,使用该包开发的代码已经商用。例子及注意问题请看我的博客,有问题请留言,https://blog.csdn.net/geman1985/article/details/80864142, 对应的博客...
  • 教案JAVA连接ACCESS数据库.pdf
  • Java连接Access数据库[收集].pdf
  • NULL 博文链接:https://xml.iteye.com/blog/1679352
  • java连接access数据库

    2015-10-21 17:11:00
    为什么提示Class.forName(sun.jdbc.odbc.JdbcOdbcDriver); 这条语句“未出现的异常类型”啊,我是照书上写的啊
  • Java连接Access数据库应用[文].pdf
  • JAVA直接连接access数据库dbf文件,同时兼容LINUX、UNIX、WINDOWS操作系统。示例工程代码,导入eclipse即可运行。
  • JAVA连接ACCESS数据库

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

    万次阅读 多人点赞 2017-11-21 22:16:39
    JDK1.7以下连接Access:ODBC连接方式 使用的工具 java JDK 1.7; Access 2013; ODBC数据源; 数据库结构 建立数据库shop,在其中添加表goods,表结构如下: 数据如下: 建立ODBC数据源:控制面板-->管理...
  • 程序运行结果为sun.jdbc.odbc.JdbcOdbcResultSet@16bf9ce,该怎样解决,求赐教
  • java连接Access数据库小例子 解压后导入到MyEclipse可直接使用
  • Java连接MS Access数据库

    2021-01-20 03:45:03
     Java连接Access可以使用MS自带的管理工具–>数据源(ODBC)设置建立连接,这样不需要导入jar。但是,如此一来程序部署的每个机器上都要进行设置不方面。所以现在不会使用啦。  2.JDBC  java也可以和连接其他...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 94,592
精华内容 37,836
关键字:

java连接access数据库