windows7_64位系统_java连接access数据库
- 格式:doc
- 大小:29.50 KB
- 文档页数:3
windows7 64位系统 java连接access数据库
废话不多说了,网上有很多java连接ACCESS数据库的代码,但都是32位的,拿到64位下就会抛出这样的异常:
java.sql.SQLException: [Microsoft][ODBC 驱动程序管理器] 未发现数据源名称并且未指定默认驱动程序
这里就是专门解决64位操作系统的代码:
特别注意,你需要先安装access2010 64位版或者office 2010 64位(安装时要选上ACCESS),因为里面含有64位的ACCESS的JDBC-ODBC驱动,否则一样会抛出上面的异常。
我们选用JDBCODBC直连access数据库文件的方法,这种比较通用,数据库文件可以放到任何位置,并且数据库版本可以是95-2010之间任意的,代码如下:
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class Test
{
public Test()
{
Connection conn = null;
try
{
// 加载注册驱动
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
/**
* 连接数据库的地址:
*
* 要注意下面的连接字符串,如果是office2007(包含2007)以前版本的使用如下的的连接字符串:
* String url = "jdbc:odbc:Driver={Microsoft Access Driver
(*.mdb)};DBQ=D:\\program\\PHONE\\Bill.mdb";
*/
/**
* 如果是64位的使用如下连接字符串:(小括号里面的多了*.accdb,并且在逗号后*.accdb前要有一个空格)
* String url = "jdbc:odbc:Driver={Microsoft Access Driver (*.mdb, *.accdb)};DBQ=D:\\program\\PHONE\\Bill.mdb";
*
*还可以自己加上数据库的账号和密码,请大家自行解决。
*/
String url = "jdbc:odbc:Driver={Microsoft Access Driver (*.mdb, *.accdb)};DBQ=D:\\program\\PHONE\\Bill.mdb";
// 创建与数据库的连接
conn = DriverManager.getConnection(url);
//传送SQL查询语句
String sql = "select * from stu where 条件;";
//执行查询
Statement st = conn.createStatement();
ResultSet rs = st.executeQuery(sql);
//返回结果
while (rs.next())
{
System.out.println(rs.getString(1));
}
System.out.println("成功连接到数据库:" + conn);
} catch (Exception e)
{
System.out.println("连接失败:" + e);
e.printStackTrace();
} finally
{
// 关闭连接,释放资源
if (conn != null)
{
try
{
conn.close();
} catch (SQLException e)
{
System.out.println("出错了");
e.printStackTrace();
}
}
}
}
public static void main(String[] args) {
Test t = new Test();
}
}。