完整代码:

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. JAVA类与对象(五)----对象的生成、使用

    对象的生成 创建一个对象包括对象的声明.实例化.初始化三部分. 1.声明-----类名对象名 声明并不是为对象分配内存空间,而只是分配一个引用空间.对象的引用类似于指针,是32位的地址空间,它的值指向 ...

  2. Indigo Studio

    http://www.infragistics.com/products/indigo-studio?gclid=CIXrnav4lcQCFdclvQoduVEAnA

  3. Linux下各硬件装置的文件名

    Linux对计算机各组件/装置的分辨,是和Windows系统完全不一样的!因为各个组件/设备在Linux上都是一个文件!因此,我们在认识各项设备时一定要学习Linux的设备文件名. 众所周知,Linu ...

  4. git简单入门

    git简单入门 标签(空格分隔): git git是作为程序员必备的技能.在这里就不去介绍版本控制和git产生的历史了. 首先看看常用的git命令: git init git add git comm ...

  5. EntityFramework走马观花之CRUD(上)

    对于任何一个ORM框架,CRUD都是其核心功能,可以这么说,CRUD功能实现得好坏,直接决定了此ORM框架的命运. CRUD是英文Create.Read.Update.Delete四个单词的缩写,对应 ...

  6. 求字符串的最长回文字串 O(n)

    昨天参加了某公司的校园招聘的笔试题,做得惨不忍睹,其中就有这么一道算法设计题:求一个字符串的最长回文字串.我在ACM校队选拔赛上遇到过这道题,当时用的后缀数组AC的,但是模板忘了没写出代码来. 回头我 ...

  7. HDU 2196 求树上所有点能到达的最远距离

    其实我不是想做这道题的...只是今天考试考了一道类似的题...然后我挂了... 但是乱搞一下还是有80分....可惜没想到正解啊! 所以今天的考试题是: 巡访 (path.pas/c/cpp) Cha ...

  8. 【BZOJ】【2705】【SDOI2012】Longge的问题

    欧拉函数/狄利克雷卷积/积性函数 2705: [SDOI2012]Longge的问题 Time Limit: 3 Sec  Memory Limit: 128 MBSubmit: 1275  Solv ...

  9. 双栈排序 noip2008

    首先可以看出第一个栈和第二个栈是没什么交集的,那么第一步是对这些元素分别归到两个栈里, 当存在k使i<j<k,a[k]<a[i]<a[j]时,i,j是不能放在一个栈里的,需要一 ...

  10. CHtml::radioButtonList

    public function getSortList(){ $arr = array(); $arr[0]['id']=0; $arr[0]['name']="否"; $arr[ ...