完整代码:

package odbcj;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.util.Properties; public class ads {
public static Connection getJDBCConnection(){
try{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");//加载Access驱动
Properties prop = new Properties();
prop.put("charSet", "gb2312"); //设置编码防止中文出现乱码
Connection con = DriverManager.getConnection("jdbc:odbc:DRIVER=Microsoft Access Driver (*.mdb, *.accdb);DBQ=E:/text.accdb");
//System.out.println(con);//打印连接
return con; }catch(Exception e){
e.printStackTrace();
}
return null;
}
public static void showAllJDBC()throws Exception{
Connection con=getJDBCConnection();
PreparedStatement ps=con.prepareStatement("select *from 表1");// 07
ResultSet rs=ps.executeQuery();
while(rs.next()){
System.out.println(rs.getString(1)+" "+rs.getString(2));
//s=Integer.toString((int)value); //jta.setText(rs.getString(1));
}
rs.close();
ps.close();
con.close();
}
public static void main(String []argv) throws Exception{
showAllJDBC();
}
}

1:不使建立ODBC数据源的方法;

注意:

String url = "jdbc:odbc:DRIVER=Microsoft Access Driver(*.mdb, *.accdb);DBQ=E:/text.accdb";//无分号,会出错
//String url="jdbc:odbc:driver=Microsoft Access Driver (*.mdb, *.accdb);DBQ=E:/text.accdb";

try{
//String url = "jdbc:odbc:DRIVER=Microsoft Access Driver(*.mdb, *.accdb);DBQ=E:/text.accdb";
String url="jdbc:odbc:driver=Microsoft Access Driver (*.mdb, *.accdb);DBQ=E:/text.accdb";
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection conn = DriverManager.getConnection(url);
Statement sta = (Statement) conn.createStatement();
ResultSet resu = ((java.sql.Statement) sta).executeQuery("select * from 表1");
while(resu.next()){
System.out.println(resu.getString("noise"));
}
resu.close();
sta.close();
conn.close();
}catch(Exception e){
e.printStackTrace();
}

2:使用ODBC建立数据源的方法;

开始

>>控制面板

>>管理工具

>>数据源(ODBC)

>>用户DSN或系统DSN

系统:
系统数据源对当前机器上的所有用户可见.
用户:
只对当前用户可见,且只能用于当前机器上.
文件:
可以由安装了相同驱动程序的用户共享.
权限不同~~

>>点添加

>>找到"Microsoft Access Driver (*.mdb)",选中,再点完成>>自定义数据源名称,可创建一个新的或选择已经有的Access数据库(.mdb)其它可以不选

>>确定>>确定

到此数据源已经建立成功

接下来JAVA代码连接:

try{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
//jdbc:odbc:数据源名称", "数据库用户名(如有)没有则空", "用户密码(如有)没有则空
Connection conn = DriverManager.getConnection("jdbc:odbc:xxx");
java.sql.Statement sta = conn.createStatement();
ResultSet resu=(sta).executeQuery("select * from 表1");
while(resu.next()){
System.out.println(resu.getString("noise"));
}
resu.close();
sta.close();
conn.close();
}catch(Exception e){
e.printStackTrace();
}

两种输出

resu.getString(3)

resu.getString("noise");

以上连接数据库的方式均支持数据库的更新,删除,插入等操作

我用的是第一种方法操作acess数据库,遇到的详细问题在后续blog中指出。

获得access主键

ResultSet rs=conn.getMetaData().getIndexInfo(null,null,"表1",true,false);
while(rs.next()){
String index=rs.getString("INDEX_NAME");
if(index!=null&&index.equalsIgnoreCase("Primarykey"))
System.out.println(rs.getString("COLUMN_NAME"));
}
rs.close();

  

java连接access数据库的更多相关文章

  1. Java连接Access数据库的那些坑

    Java 使用 JDBC 连接Access数据库 需要掌握的技能 1.Java SE基本技术 2.懂点JDBC技术 能够学到如何使用Java正确的连接JDBC 环境 window8.1 64位 jdk ...

  2. java连接Access数据库的两种方法

    where ziduan  in(select  ziduan from  table) 嵌套 ResultSet rs = pst.executeQuery();List list = new Ar ...

  3. Java 连接 Access数据库方式

    import <a href="http://lib.csdn.net/base/java" class='replace_word' title="Java 知识 ...

  4. JSP连接access数据库

    一个用jsp连接Access数据库的代码. 要正确的使用这段代码,你需要首先在Access数据库里创建一username表,表里面创建两个字符型的字段,字段名分别为:uid,pwd,然后插入几条测试数 ...

  5. JAVA连接ACCESS、MYSQL、SQLSEVER、ORACLE数据库

    . 概要 1.1 JDBC概念 JDBC(Java Database Connectivity)是Java语言为了支持SQL功能而提供的与数据库连接的用户的接口.JDBC中包含了一组由(Java)语言 ...

  6. Java Web项目中连接Access数据库的配置方法

    本文是对前几天的"JDBC连接Access数据库的几种方式"这篇的升级.因为在做一些小项目的时候遇到的问题,因此才决定写这篇博客的.昨天已经将博客公布了.可是后来经过一些验证有点问 ...

  7. java远程连接access数据库

    本文转载自http://www.voidcn.com/article/p-tlrtkqlp-k.html 1  rmijdbc远程连接access数据库 正常情况下,常用的数据库sql server, ...

  8. JDBC-ODBC桥接器连接Access数据库

    今天,遇到一个问题,虽然不是什么大难题,但对于初学者来说也缠绕了我好久!(好气哦) 问题: 运行jsp项目连接不上数据库: java.sql.SQLException: [Microsoft][ODB ...

  9. Java 连接Access

    Java 连接Access 第一次使用连接Access数据库, 记录一下遇到的坑 Access驱动下载地址 http://pan.baidu.com/s/1o8ltTfc 不使用WINDOW的建立数据 ...

随机推荐

  1. php5调用web service (笔者测试成功)

    转自:http://www.cnblogs.com/smallmuda/archive/2010/10/12/1848700.html 感谢作者分享 工作中需要用php调用web service接口, ...

  2. [转]vim常用命令

    [转]vim常用命令 http://www.cnblogs.com/sunyubo/archive/2010/01/06/2282198.html http://blog.csdn.net/wooin ...

  3. Android实现简单拨号器

    Android实现简单拨号器 开发工具:Andorid Studio 1.3 运行环境:Android 4.4 KitKat 代码实现 界面布局只有GridLayout和EditText两个控件,全部 ...

  4. 三,samba

    转载:http://www.cnblogs.com/phinecos/archive/2009/06/06/1497717.html 一. samba的安装: sudo apt-get insall  ...

  5. NEST.net Client For Elasticsearch简单应用

    NEST.net Client For Elasticsearch简单应用 由于最近的一个项目中的搜索部分要用到 Elasticsearch 来实现搜索功能,苦于英文差及该方面的系统性资料不好找,在实 ...

  6. C#制作高仿360安全卫士窗体<一>

    开始写这一系列博客之前先要向大家说声抱歉,放肆雷特建立很久却很少有更新.当然博客人气也不旺,大部分都是看的人多评论收藏的人少.一直想要改变这种状态,正好赶上了最近工作上做了一个高仿360安全卫士窗体. ...

  7. 代码复用 -- 深入了解javascript

    /* 代码复用 */ /* 一.避免 */ /* 模式1:默认模式 */ function Parent() { this.name = "123"; } Parent.proto ...

  8. MySQL中表格各页面的注意和操作项

  9. bzoj 3142 数学

    找规律后可以之后答案就是 k^(m-1)*(n-(m-1)*k)+(m+(m-1)*k+1)*k^(m-1) div 2 /************************************** ...

  10. int型整数的数值范围

    假设int型用两个字节表示对于有符号的整数,用补码表示的话,最高位是符号位,后面15位用来表示数据.1.正数,表示的范围为0000 0000 0000 0001-0111 1111 1111 1111 ...