实际开发中,经常需要在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 >
< 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 >