今天一個學弟問我java連接access數據庫怎麼弄,於是我就寫了個例子。寫jsp代碼倒不難,一個異常困擾了我好久,因爲一直沒有用過ODBC連接過數據庫,不太會用。
就是這個異常,java-sql-sqlexception-microsoft-odbc-driver-manager-data-source-name-not-found,提示data source就是數據源找不到
下面開始介紹具體步驟。
1.打開access,創建數據庫和表
我的數據庫取名test,表名爲user
最後另存爲.mdb結尾的文件到桌面(我是存到桌面,因爲做測試)
2.打開電腦控制面板,將顯示方式設置成小圖標,找到ODBC
點擊ODBC,然後點System DSN,點add選擇Microsoft access Driver
3.然後輸入數據源名稱,寫個test(這裏應該是跟java代碼裏面的那個"jdbc:odbc:test"中的test對應吧)
然後選擇自己第一部保存的test.mdb,點擊高級裏面設置用戶名和密碼,設置完成後點確定
4.以上數據源就配置好了下面看jsp代碼
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%@ page import="java.sql.*"%>
<%
String path = request.getContextPath();
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title></title>
</head>
<body>
<%
String url = "jdbc:odbc:test";
String sql = "select * from user";
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection conn = DriverManager.getConnection(url,"linjian","110110");//這裏的用戶名密碼寫你第三步設置的
PreparedStatement ps = conn.prepareStatement(sql);
ResultSet rs = ps.executeQuery();
%>
<table border="1">
<tr>
<td>id</td>
<td>age</td>
<td>username</td>
</tr>
<%
while(rs.next()){
%>
<tr>
<td><%=rs.getString(1)%></td>
<td><%=rs.getString(2)%></td>
<td><%=rs.getString(3)%></td>
</tr>
<%
}
conn.close();
%>
</table>
</body>
</html>
因爲是ODBC連接數據庫,對應的sun.jdbc.odbc.JdbcOdbcDriver在jdk裏面的rt.jar裏面有,所以不需要第三方jar包
下面配一些步驟圖片,結合上面文字好操作。