java连接access数据库
完整代码:
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数据库的更多相关文章
- Java连接Access数据库的那些坑
Java 使用 JDBC 连接Access数据库 需要掌握的技能 1.Java SE基本技术 2.懂点JDBC技术 能够学到如何使用Java正确的连接JDBC 环境 window8.1 64位 jdk ...
- java连接Access数据库的两种方法
where ziduan in(select ziduan from table) 嵌套 ResultSet rs = pst.executeQuery();List list = new Ar ...
- Java 连接 Access数据库方式
import <a href="http://lib.csdn.net/base/java" class='replace_word' title="Java 知识 ...
- JSP连接access数据库
一个用jsp连接Access数据库的代码. 要正确的使用这段代码,你需要首先在Access数据库里创建一username表,表里面创建两个字符型的字段,字段名分别为:uid,pwd,然后插入几条测试数 ...
- JAVA连接ACCESS、MYSQL、SQLSEVER、ORACLE数据库
. 概要 1.1 JDBC概念 JDBC(Java Database Connectivity)是Java语言为了支持SQL功能而提供的与数据库连接的用户的接口.JDBC中包含了一组由(Java)语言 ...
- Java Web项目中连接Access数据库的配置方法
本文是对前几天的"JDBC连接Access数据库的几种方式"这篇的升级.因为在做一些小项目的时候遇到的问题,因此才决定写这篇博客的.昨天已经将博客公布了.可是后来经过一些验证有点问 ...
- java远程连接access数据库
本文转载自http://www.voidcn.com/article/p-tlrtkqlp-k.html 1 rmijdbc远程连接access数据库 正常情况下,常用的数据库sql server, ...
- JDBC-ODBC桥接器连接Access数据库
今天,遇到一个问题,虽然不是什么大难题,但对于初学者来说也缠绕了我好久!(好气哦) 问题: 运行jsp项目连接不上数据库: java.sql.SQLException: [Microsoft][ODB ...
- Java 连接Access
Java 连接Access 第一次使用连接Access数据库, 记录一下遇到的坑 Access驱动下载地址 http://pan.baidu.com/s/1o8ltTfc 不使用WINDOW的建立数据 ...
随机推荐
- [转]webrtc学习: 部署stun和turn服务器
[转]webrtc学习: 部署stun和turn服务器 http://www.cnblogs.com/lingdhox/p/4209659.html webrtc的P2P穿透部分是由libjingle ...
- Android实现AppWidget、Broadcast静态注册
Android实现AppWidget.Broadcast静态注册 本篇博客是基于我上一篇博客继续修改的,详情请看Android实现AppWidget.Broadcast动态注册 开发工具:Andori ...
- UIAlertView(已经过时) UIActionView swift
// // ViewController.swift // UILabelTest // // Created by mac on 15/6/23. // Copyright (c) 2015年 fa ...
- 邻接矩阵实现Dijkstra算法以及BFS与DFS算法
//============================================================================ // Name : MatrixUDG.c ...
- c/c++中主线程退出,子线程也会退出
#include <windows.h> #include <process.h> /* _beginthread, _endthread */ #include <io ...
- U3D 随笔
http://unity3d.com/ 资源站 http://docs.unity3d.com/Documentation/ScriptReference/index.html 最新API new ...
- IE点击tif,tiff文件,提示打开而不是查找
IE点击tif或者tiff后缀的文件,提示窗口没有显示打开,而是现实查找.而下载到本地后,又能用acdsee之类的软件双击打开.在tif文件右键-属性中选择了打开程序,在IE中还是依然. 搜索网络资料 ...
- Netsharp快速入门(之15) 销售管理(报表B 销售季度表)
作者:秋时 杨昶 转载须说明出处 4.6.2 销售季度表(交叉表) 1.1.1.1 交叉表带数据源和不带数据源区别 带数据源的可以自定义数据源,可以从实体,也可以从Sql脚本得到数据源,并能自定 ...
- Python 读写excel数据
读取excel 文件的数据 import csv with open('D:/mystuff/11.csv','r') as f: reader = csv.reader(f) for row in ...
- Entity Framework公共的增删改方法
using System; using System.Collections.Generic; using System.Data.Entity; using System.Data.Entity.I ...