120急救!!!关于打开带密码的ACCESS数据库!

愿和全人类共扯一个蛋 2003-02-11 11:08:47
刚才研究了很多相关帖子,知道如何打开,但在我的程序里老是显示错误“找不到可安装的ISAM”,不知道这个ISAM是什么东东?不知道大家碰没碰到过这个问题,怎么解决?请高人指教!
...全文
72 17 打赏 收藏 转发到动态 举报
写回复
用AI写文章
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
wtcooler 2003-02-13
  • 打赏
  • 举报
回复
我又试了一试,只需要这个串就行了:
cn.ConnectionString="Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=" & App.Path & "\DB.mdb;" & _
"Jet OLEDB:DataBase Password=123"
wtcooler 2003-02-13
  • 打赏
  • 举报
回复
事实上我只是提供一个解决问题的思路。你试一下:
一开始我用的连接串也是:
cn.ConnectionString="Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=" & App.Path & "\DB.mdb;" & _
"DataBase Password=123"
运行时也会出现“找不到可安装的ISAM”的错误提示,于是我用另一种方法测试一下连接:
1.VB6中新建一个标准EXE工程;
2.添加数据环境设计器;
3.在数据环境设计器中选择Connection1对象,单击鼠标右键;
4.在右键菜单中选择属性,打开数据连接属性对话框;
5.在“提供者”页框中选择“Microsoft Jet 4.0 OLE DB Provider”;
6.在“连接”页框中选择需要打开的ACCESS数据库;
7.在“ALL”页框中修改Jet OLEDB:Database Password的值为数据库的密码;
8.在“连接”页框中测试一下连接,此时连接应该成功。
这时你就应该想一想,同样用的是ADO对象,为什么数据环境设计器里可以成功连接,而用上面的方法却不行?
9.选择数据环境设计器中的Connection1对象,选择ConnectionSource属性值,并按Ctrl-C复制出来;
10.把复制出来的内容粘贴到上面的连接串里,此时一定要注意去掉串内部的双引号“"”。
用复制出来的连接串就可以访问到数据库了,我就是这么做的。
如果连接成功了,你可以再试着精减一下这个串,找到其中的规律。
超级大笨狼 2003-02-13
  • 打赏
  • 举报
回复
我们这里买很方便的,4元一张
超级大笨狼 2003-02-13
  • 打赏
  • 举报
回复
你买一张盗版的csdn光盘,前年的,现在还有卖的里面就有,而且还有好多好东西
ericyin 2003-02-13
  • 打赏
  • 举报
回复
officeRecovery
maskzha 2003-02-13
  • 打赏
  • 举报
回复
up
jingxuanhuang 2003-02-13
  • 打赏
  • 举报
回复
中文本的方法是详细而且可行的。!!!
中文本能否交个朋友啊?
  • 打赏
  • 举报
回复
好!谢谢wtcooler(中文本),我去试试,先给你20,剩下的等会给你!
简易无忌 2003-02-12
  • 打赏
  • 举报
回复
老大呀,分太少了吧~~~
nydelphi 2003-02-12
  • 打赏
  • 举报
回复
up
jingxuanhuang 2003-02-12
  • 打赏
  • 举报
回复
我插入那段代码后仍是出错
wtcooler 2003-02-12
  • 打赏
  • 举报
回复
不是要你用手写的,是复制出来的!
当然你可以一段一段地试着减少串的内容,只要不出现错误就行。
jxf_yx 2003-02-12
  • 打赏
  • 举报
回复
cn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Password=;User ID=Admin;Data Source=E:\My Programe\Localserver.mdb;Mode=Share Deny None;Extended Properties=;Jet OLEDB:System database=;Jet OLEDB:Registry Path=;Jet OLEDB:Database Password=123;Jet OLEDB:Engine Type=5;Jet OLEDB:Database Locking Mode=1;Jet OLEDB:Global Partial Bulk Ops=2;Jet OLEDB:Global Bulk Transactions=1;Jet OLEDB:New Database Password=;Jet OLEDB:Create System Database=False;Jet OLEDB:Encrypt Database=False;Jet OLEDB:Don't Copy Locale on Compact=False;Jet OLEDB:Compact Without Replica Repair=False;Jet OLEDB:SFP=False"

有谁见过这么长的conn
wtcooler 2003-02-12
  • 打赏
  • 举报
回复
不好意思,忘了要分!!:-)
wtcooler 2003-02-12
  • 打赏
  • 举报
回复
我刚刚也试了一下,也出现了ISAM的问题,现在已经解决了,主要是连接串的问题。你可以用新建一个数据环境的方法建立与带密码数据库的连接,然后把数据环境中连接对象的ConnectionSource属性复制出来作为ADO的连接串就可以了。不过要注意去掉其中的双引号。我的示例如下:
Dim cn As ADODB.Connection
Set cn = New ADODB.Connection
cn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Password=;User ID=Admin;Data Source=E:\My Programe\Localserver.mdb;Mode=Share Deny None;Extended Properties=;Jet OLEDB:System database=;Jet OLEDB:Registry Path=;Jet OLEDB:Database Password=123;Jet OLEDB:Engine Type=5;Jet OLEDB:Database Locking Mode=1;Jet OLEDB:Global Partial Bulk Ops=2;Jet OLEDB:Global Bulk Transactions=1;Jet OLEDB:New Database Password=;Jet OLEDB:Create System Database=False;Jet OLEDB:Encrypt Database=False;Jet OLEDB:Don't Copy Locale on Compact=False;Jet OLEDB:Compact Without Replica Repair=False;Jet OLEDB:SFP=False"
cn.Open


Dim rs As ADODB.Recordset
Set rs = New ADODB.Recordset
rs.Open "select * from table_user", cn
While Not rs.EOF
Debug.Print rs.Fields(0)
rs.MoveNext
Wend
不管连接串中的具体内容如何,反正问题解决了!!!!汗~--
13161795500 2003-02-12
  • 打赏
  • 举报
回复
驱动问题,建议重新安装ADO
  • 打赏
  • 举报
回复
这个好说,解决了再给100可以吧

1,216

社区成员

发帖
与我相关
我的任务
社区描述
VB 数据库(包含打印,安装,报表)
社区管理员
  • 数据库(包含打印,安装,报表)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧