ASP+Access2007连接数据库提示密码无效

ASP+Access2007连接数据库提示密码无效
数据库名“demo.accdb”
在数据库没有密码时,使用代码时如下代码运行正常
conn.open "Provider=Microsoft.ACE.OLEDB.12.0;Data Source="&Server.MapPath("mdb/demo.accdb")
在给数据库设定密码“123”后如下代码运行错误
conn.open "Provider=Microsoft.ACE.OLEDB.12.0;Data Source="&Server.MapPath("mdb/demo.accdb")&";Jet OLEDB:Database Password=123"
错误提示如下
错误类型:
Microsoft Office Access Database Engine (0x80040E4D)
密码无效。
敬请高手帮忙!!

有可能是权限的问题,ASP访问Access数据库需要通过“Internet来宾帐户”,可能你对应的demo.accdb文件未对其受权,右键->属性->安全,将“Internet来宾帐户”权限设为完全控制,我之前密码无效的问题就是这么解决的。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-01-30
ACCESS2007加密后 在用ASP连接很容易出问题
所以建议先点OFFICE 按钮,点击另存数据库,存为2000-2003 的那个选项,这样兼容性比较好。追问

谢谢!扩展名mdb的代码知道怎么用,现在的问题是这个扩展名accdb的还连了些其他的东西不太好改。

第2个回答  2012-02-08
以前曾经用过,好在服务器自身不带Microsoft.ACE.OLEDB.12.0的驱动,要在服务器上装过access2007才可以。
第3个回答  2013-11-28
Set cn=Server.CreateObject("ADODB.Connection")
'2007 2010 2013 格式
connstr.open "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\myFolder\myAccessFile.accdb;Persist Security Info=False;"
connstr.open "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\myFolder\myAccessFile.accdb;Jet OLEDB:Database Password=密码;"
cn.Open connstr

.accdb格式的带密码的我试过了,没连上...
对了,Access 2010 加过密码的accdb文件就是你取消了密码,也是连不上,不知是为什么,但是Access 2007 加过密码的accdb文件就是你取消了密码就可以连上。我也不明白!!!
第4个回答  2012-01-30
conn="Provider=Microsoft.Jet.OLEDB.4.0;Jet Oledb:Database Password=123;Data Source="&Server.MapPath(数据库路径)追问

未解决!但这句用在扩展名为.mdb上确实能运行!

相似回答