實際開發中,經常需要在Javascript中訪問資料庫,以取得較好的效能和使用者體驗。下面以實際例子給經說明,測試時,請將資料庫名改為你的資料庫名。(以Access為例).
<html>
<head>
<title>表格顯示資料表記錄</title>
</head>
<body>
<h2>
表格顯示資料表記錄</h2>
<hr>
<script language="JavaScript">...
// 建立資料庫物件
var objdbConn = new ActiveXObject("ADODB.Connection");
// DSN字串
var strdsn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:/db.mdb;Persist Security Info=True;";
// 開啟資料來源
objdbConn.Open(strdsn);
// 執行SQL的資料庫查詢
var objrs = objdbConn.Execute("SELECT * FROM t_name");
// 擷取欄位數目
var fdCount = objrs.Fields.Count - 1;
// 檢查是否有記錄
if (!objrs.EOF)
...{
document.write("<table border=1><tr>");
// 顯示資料庫的欄位名稱
for (var i=0; i <= fdCount; i++)
document.write("<td><b>" + objrs.Fields(i).Name + "</b></td>");
document.write("</tr>");
// 顯示資料庫內容
while (!objrs.EOF)
...{
document.write("<tr>");
// 顯示每筆記錄的欄位
for (i=0; i <= fdCount; i++)
document.write("<td valign='top'>" + objrs.Fields(i).Value + "</td>");
document.write("</tr>");
objrs.moveNext(); // 移到下一筆記錄
}
document.write("</table>");
}
else
document.write("資料庫內沒有記錄!<br>");
objrs.Close(); // 關閉記錄集合
objdbConn.Close(); // 關閉資料庫連結
</script>
</body>
</html>