日期:2014-05-19  浏览次数:20638 次

连接access的问题
我创建的web应用程序的开发环境是:vs2003+access+win2000   Professional
web应用程序写完后,我没有打包(打包没成功,见笑了),直接把程序的文件夹拷到其他机器(win2000   professional)上,再安装net1.1框架,最后创建虚拟目录就可以访问;

可是在win2000Server服务器上却提示我:the   .net   Data   Ole   DB   Provider(System.Data.OleDb)   requires   Microsoft   Data   access   components(MDAC)   version   2.6   or   later.   version   2.53.6306.0   was   found   currently   installed.

我知道是他机器上的mdac版本太低了,我机器上是2.8,只要升级客户机器上的mdac就可以了。现在关键是,客户的机器放了好多asp的网站,用的也是access数据库,人家不同意我升级mdac,让我自己想办法.郁闷啊.

    所以,我想换一下连接方式,我原来用的连接方式是:
string   connsource= "Provider=Microsoft.Jet.OLEDB.4.0;Data   Source= "+Server.MapPath( "web.mdb ");
现在我想换成       string   connsource= "Driver={Microsoft   Access   Driver   (*.mdb)};Dbq= "   +   Server.MapPath( "web.mdb ");
不知道这种方式会不会因为mdac版本低而不好使,如果好使,我下边的代码该怎么改呢?
string   connsource= "Provider=Microsoft.Jet.OLEDB.4.0;Data   Source= "+Server.MapPath( "lyjz.mdb ");
        OleDbConnection   conn1   =   new   OleDbConnection(connsource);
conn1.Open();
string   sql   =   "select   dwname   as   单位名称,username   as   姓名,pwd   as   密码   from   qxgl   order   by   userclass ";

OleDbDataAdapter   cmd1   =   new   OleDbDataAdapter(sql,   conn1);
DataSet   ds1=   new   DataSet();
cmd1.Fill(ds1, "qxgl ");
DataView   source1   =   new   DataView(ds1.Tables[0]);
DataGrid1.DataSource=source1;
DataGrid1.DataBind();
conn1.Close();


------解决方案--------------------
升级mdac是不会对原来的asp有影响的,我们公司有些人用asp搞开发,学习时采用vs2005,一点影响也没有,好象.net就需要MADC2.8的。