如何用网页对本地access数据库进行访问?

想用一个html格式的网页加上一些控件达到对本地access数据库访问并将结果以网页形式显示的效果.且不要在本地架设服务器,该如何做呢?小弟是一菜鸟,还请高手通俗解答,谢... 想用一个html格式的网页加上一些控件达到对本地access数据库访问并将结果以网页形式显示的效果.且不要在本地架设服务器,该如何做呢?小弟是一菜鸟,还请高手通俗解答,谢谢 展开
 我来答
qsc800528
2007-01-29 · TA获得超过2974个赞
知道大有可为答主
回答量:1383
采纳率:0%
帮助的人:1761万
展开全部
javascript连接access数据库
作者:great_domino 的 Blog
文件构成:
Access数据库名为 MyData.Mdb, 里面建了一个名为count的表,表由两个
字段组成: ID和COUNT,表里有一条数据: (''''count'''',''''100'''')。
文本文件名为 count.txt,里面随便写入一个数字。
静态页面名为Cnt.htm。
以上3个文件都放在同一目录下。

由于采用Access数据库,而它采用非标准SQL语法,所以要注意在表名
和字段名上需要加方括号: []

下面是页面里的代码:

其中getCountFromDB方法是对Access数据库进行操作,getCountFromTxt
方法是对txt纯文本进行操作,这两个方法都在本地执行通过。

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<META NAME="Generator" CONTENT="EditPlus">
<META NAME="Author" CONTENT="">
<META NAME="Keywords" CONTENT="">
<META NAME="Description" CONTENT="">
<SCRIPT LANGUAGE="JavaScript">
<!--
function getCountFromDB() {
//以当前页面文件为基础,找到文件所在的绝对路径。
var filePath = location.href.substring(0, location.href.indexOf("Cnt.htm"));
var path = filePath + "MyData.mdb";
//去掉字符串中最前面的"files://"这8个字符。
path = path.substring(8);
var updateCnt = 0;

//生成查询和更新用的sql语句。
var sqlSelCnt = "SELECT COUNT FROM [COUNT] WHERE ID = ''''count''''";
var sqlUpdCnt = "UPDATE [COUNT] SET [COUNT] = ''''";

//建立连接,并生成相关字符串 www.zhangpeng.com.cn
var con = new ActiveXObject("ADODB.Connection");
con.Provider = "Microsoft.Jet.OLEDB.4.0";
con.ConnectionString = "Data Source=" + path;

con.open;
var rs = new ActiveXObject("ADODB.Recordset");
rs.open(sqlSelCnt, con);
while (!rs.eof) {
var cnt = rs.Fields("COUNT");
document.write(cnt);
//将取得结果加1后更新数据库。
updateCnt = cnt * 1 + 1;
rs.moveNext;
}
rs.close();
rs = null;

sqlUpdCnt = sqlUpdCnt + updateCnt + "''''";
con.execute(sqlUpdCnt);

con.close();
con = null;
}

function getCountFromTxt() {
var filePath = location.href.substring(0, location.href.indexOf("Cnt.htm"));
var path = filePath + "count.txt";
path = path.substring(8);
var nextCnt = 0;

var fso, f1, ts, s;
//以只读方式打开文本文件。
var ForReading = 1;
//以读写方式打开文本文件。
var ForWriting = 2;

fso = new ActiveXObject("Scripting.FileSystemObject");
f1 = fso.GetFile(path);
ts = f1.OpenAsTextStream(ForReading, true);
s = ts.ReadLine();
nextCnt = eval(s) + 1;
document.write("now count is :" + s);
ts.Close();

ts = f1.OpenAsTextStream(ForWriting, true);
ts.WriteLine(nextCnt);
ts.close();
}
//-->
</SCRIPT>
</HEAD>

<BODY>
<SCRIPT LANGUAGE="JavaScript">
<!--
getCountFromTxt();
//-->
</SCRIPT>
</BODY>
</HTML>
genehxm
2007-01-29 · 超过19用户采纳过TA的回答
知道答主
回答量:75
采纳率:0%
帮助的人:0
展开全部
连接语句你会写吧,如果没写过上网查一下,都是固定格式,懒得查了,直接用连接字符串连就可以了,如下

Provider=Microsoft.Jet.OLEDB.4.0;Data Source=ACCESS文件绝对路径和文件名;Persist Security Info=True

例:
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\aaa.mdb;Persist Security Info=True
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式