.net1.1 环境下 开发Access连接的错误,不支持关键字provider,找不到可安装的 ISAM等。

cenxaoi 2009-03-30 12:51:19
开发环境win2003 ,ntfs文件系统。 Access 2003,数据库文件安全为everyone 都可读写。
使用OleDbConnection向导建立的连接字串如下,在向导界面测试成功。
CNString= @"Jet OLEDB:Global Partial Bulk Ops=2;Jet OLEDB:Registry Path=;Jet OLEDB:Database Locking Mode=1;Data Source=""E:\Inetpub\wwwroot\WebApplication1\db\db2.mdb"";Jet OLEDB:Engine Type=5;Provider=""Microsoft.Jet.OLEDB.4.0"";Jet OLEDB:System database=;Jet OLEDB:SFP=False;persist security info=False;Extended Properties=;Mode=Share Deny None;Jet OLEDB:Encrypt Database=False;Jet OLEDB:Create System Database=False;Jet OLEDB:Don't Copy Locale on Compact=False;Jet OLEDB:Compact Without Replica Repair=False;User ID=Admin;Jet OLEDB:Global Bulk Transactions=1";

运行提示 :不支持关键字: “jet oledb:global partial bulk ops”。

换个写法:
CNString=@"Provider=Microsoft.Jet.OLEDB.4.0; Data Source=E:\Inetpub\wwwroot\WebApplication1\db\db1.mdb;User ID=Admin;Password=; ";
运行提示:不支持关键字: “provider”
看到网上一些用sqlconnection写连接的含 Provider=sqlOledb时也提示这个错误,把Provider属性删去就正常。
我用的是OledbConnection 想来也把Provider属性删去。

再换个写法如下:
CNString=@"Data Source=E:\Inetpub\wwwroot\WebApplication1\db\db1.mdb;User ID=Admin;Password=; ";
运行提示在 ConnectionString 中未指定 OLE DB 提供程序。示例为:“Provider=SQLOLEDB;”。

晕,把Provider写进去就说不支持,把Provider去掉就说缺少,搞死我了。
上面三种写法,错误都在给OleDbConnection对象ConnectionString属性赋值语句触发错误。

再换种写法如下:
CNString=@"provider=Microsoft.Jet.OLEDB.4.0;Database=E:\Inetpub\wwwroot\WebApplication1\db\db1.mdb;UID=Admin;PWD=; ";
最简单的写法,
现在是在cn.Open();时触发错误,
提示:找不到可安装的 ISAM。

把 mdac27SP1 Access2003重装了仍无补于事。

跪求MVP们如何解决啊。

...全文
635 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
chengliwangtao 2010-10-29
  • 打赏
  • 举报
回复
我的程序和你说的差不多。我用sql2000 vs2005 写了一个网站上传到服务器。用他们给我的字符串provider=sqloledb;data source=117.79.84.87,1433;User ID=eastbetter;pwd=sd;Initial Catalog=eastbetter
就出现不支持关键字Provider 我知道sqloledb 不对。我把provider=sqloledb 删除掉后 在浏览首页时出现无法找到表。前提是我在本地运行的时候没有任何问题。
希望那位高手,能否点破关键支持,急需解决。
YuccaWei 2009-10-16
  • 打赏
  • 举报
回复
不知道楼主解决这个问题了没有,我按4楼教的安了一下,还是没有解决,我也无奈了。
YuccaWei 2009-10-13
  • 打赏
  • 举报
回复
我也有这个问题估计也是MDAC.inf的原因了,但是俺没有安装盘啊,愁啊
byteh 2009-04-21
  • 打赏
  • 举报
回复
试一下这个方法,从去年到现在治好了客户的3台机器了
WINDOWS的INF目录下,右键点击MDAC.inf,选“安装”,放入XP安装盘,进入I386目录,安装就可以了。
cenxaoi 2009-03-30
  • 打赏
  • 举报
回复
忘了补充句,本机装有sql2000.
ACMAIN_CHM 2009-03-30
  • 打赏
  • 举报
回复

你用的是什么conection ? sqlconnection 还是 OleDbConnection ?

OleDbConnection cn = new OleDbConnection (@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\mydatabase.mdb;User Id=admin;Password=;");


QQ群 48866293 / 12035577 / 7440532 / 13666209
ACCESS专业论坛
http://www.accessbbs.cn/bbs/index.php .
http://www.office-cn.net/vvb/ .
http://www.accessoft.com/bbs/index.asp .
http://www.access-programmers.co.uk/forums .
.
http://www.office-cn.net/home/space.php?uid=141646 .

wwwwb 2009-03-30
  • 打赏
  • 举报
回复
ADO应该是系统自带的,用其它语言,比如VB、C、VFP等等
用provider=Microsoft.Jet.OLEDB.4.0;Database=E:\Inetpub\wwwroot\WebApplication1\db\db1.mdb;UID=Admin;PWD=;
连接字串,看看能否连接成功

7,714

社区成员

发帖
与我相关
我的任务
社区描述
Microsoft Office Access是由微软发布的关系数据库管理系统。它结合了 MicrosoftJet Database Engine 和 图形用户界面两项特点。
社区管理员
  • Access
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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