
java读Access数据库就像读其它数据库一样,mdb文件中读出数据。
参考代码如下:
/*** TODO : 读取文件access
* @param filePath
* @return
* @throws ClassNotFoundException
*/
public static List<Map> readFileACCESS(String filePath) {
List<Map> maplist= new ArrayList()
Properties prop = new Properties()
prop.put("charSet", "gb2312") //这里是解决中文乱码
prop.put("user", "")
prop.put("password", "")
String url="jdbc:odbc:driver={Microsoft Access Driver (*.mdb)}DBQ="+filePath //文件地址
PreparedStatement ps=null
Statement stmt=null
ResultSet rs=null
try {
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver")
Connection conn=DriverManager.getConnection(url,prop)
stmt = (Statement)conn.createStatement()
rs=stmt.executeQuery("select * from Chinese")
ResultSetMetaData data=rs.getMetaData()
while(rs.next()) {
Map map= new HashMap()
for(int i = 1 i<= data.getColumnCount() i++){
String columnName =data.getColumnName(i) //列名
String columnValue= rs.getString(i)
map.put(columnName, columnValue)
}
maplist.add(map)
}
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace()
}
return maplist
}
如果是为了访问.MDB数据库那可以用以下方法Class.forName("sun.jdbc.odbc.JdbcOdbcDriver")String url = "jdbc:odbc:driver={Microsoft Access Driver (*.mdb)}DBQ=db1.mdb"Connection con= DriverManager.getConnection(url,"user","pass")拿到连接进行普通的数据库 *** 作即可如果只是单纯的想导数据并不是程序的功能的话,可以用工具实现导入java.sql包 \x0d\x0a一、加载要连接数据库的驱动程序 \x0d\x0a//Jdbc-Odbc桥 和 Microsoft Access 数据库 \x0d\x0aClass.forName("sun.jdbc.odbc.JdbcOdbcDriver")\x0d\x0a// SQL Server 驱动程序: \x0d\x0aClass.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver")\x0d\x0a注:Class.forName()方法将给定的类加载到JVM,如果系统中不存在给定的类,则会引发异常 \x0d\x0a二、通过驱动程序管理器得到连接实例 \x0d\x0aConnection conn=null\x0d\x0a//1. \x0d\x0a//1.1建立数据源 \x0d\x0aconn=DriverManager.getConnection("jdbc:odbc:MyDataSource")//MyDataSource是数据源名称 \x0d\x0a//1-2、不建立数据源 \x0d\x0aconn=DriverManager.getConnection("jdbc:odbc:Driver=Microsoft Access Driver (*.mdb)DBQ=C:\\VBTest.mdb")\x0d\x0a//2.SQL Server \x0d\x0aconn=DriverManager.getConnection("jdbc:microsoft:sqlserver://127.0.0.1:1433databasename=mydb","sa","")\x0d\x0a\x0d\x0a注:DriverManager类跟踪已注册的驱动程序,通过getConnection(URL)方法, 找到一个能够连接至URL中指定的数据库驱动程序 \x0d\x0a它接收三个参数, 分别表示1 数据源的名称、类型 2 用户名(可选) 3 密码(可选) \x0d\x0a三、基于连接对象建立处理器对象 \x0d\x0aStatement stmt=conn.createStatement()\x0d\x0a四、准备sql命令 \x0d\x0aString sql="select * from Student"\x0d\x0a五、执行命令返回结果集 \x0d\x0aResultSet rs=stmt.executeQuery(sql)\x0d\x0a六、显示结果集 \x0d\x0awhile(rs.next())//只要后面有记录 \x0d\x0a{ \x0d\x0a//对当前行的所有字段遍历 \x0d\x0afor(int i=1i 回答于 2022-12-11欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)