Java连接Access数据库
来源:互联网 发布:汉宁窗 c语言 编辑:程序博客网 时间:2024/05/19 11:45
- JDK1.7以下连接Access:ODBC连接方式
- 使用的工具
- 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 classExample11_1 {
public static voidmain(Stringargs[]) throws Exception {
Connectioncon = null;
Statementsql;
ResultSetrs;
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()) {
Stringnumber = rs.getString(1);
Stringname = rs.getString(2);
Datedate = rs.getDate("madTime");
doubleprice = 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 classJDBCAccess {
public static voidmain(String[]args) {
// url表示需要连接的数据源的位置,此时使用的是JDBC-ODBC桥的连接方式,url是"jdbc:odbc:数据源名"
Stringurl = "jdbc:Access:///d:/a1.mdb";
try{
Class.forName("com.hxtt.sql.access.AccessDriver");
Connectionconn = DriverManager.getConnection(url);
Statementstat = conn.createStatement();
Stringsql = "select * from goods";
ResultSetrs = stat.executeQuery(sql);
while(rs.next()){
System.out.println(rs.getString(2));
}
}catch (ClassNotFoundException| SQLExceptione) {
//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数据库
- Java连接access数据库
- JAVA连接ACCESS数据库
- Java连接access数据库
- JAVA连接access数据库
- Java连接access数据库
- Java连接Access数据库
- Java连接Access数据库
- Java连接access数据库
- java连接Access数据库
- java 连接access数据库!!
- Java连接access数据库
- Java连接Access数据库
- java连接access数据库
- java连接access数据库
- java连接access数据库
- Java 连接 Access 数据库
- 欢迎使用CSDN-markdown编辑器
- tensorflow 使用
- MySQL数据库学习11-插入数据
- java多线程(4)synchronized的作用
- leetcode#168. Excel Sheet Column Title
- Java连接Access数据库
- linux下gdb如何重定向输入
- 基于Struts2和hibernate的WebSocket聊天室的实现教程四:实现登录接口
- 14. ArrayList、LinkedList、Vector的区别。
- checkpoint机制,show engine innodb status
- 消息队列kafka(二)--与spring整合(kafkaTemplate方式)
- HDU-5575-Discover Water Tank
- Oracle 创建用户
- Android相关