大家都知道串这样写的时候

"Provider=Microsoft.Jet.OLEDB.4.0;Data Source="&Server.MapPath("../jcwcn.mdb")

后面的数据库文件路径是相对路径,可以直接移植到服务器空间里。但是我们在这样写串的时候DW会报“不符合OLE DB的规定”的错误。这是为什么呢,难道是软件开发者连着最基本的功能都搞不定?我也疑问了很长一段时间。后来我无意中发现了。原来是因为我们没有把本地驱动程序\服务器上的驱动程序和两种写串的方式对应起来

其实正确的做法应该如下:

"Driver={Microsoft access Driver (*.mdb)};dbq=E:\www\asp\DW\jcwcn.mdb"

这样的串写法要选择使用本地计算机上的驱动

"Provider=Microsoft.Jet.OLEDB.4.0;Data Source="&Server.MapPath("../jcwcn.mdb")

这样写的串,可移直接植到服务器上,这个时候我们要选择“使用服务器上的驱动程序”

感谢您的阅读,本文由 蓝色梦想 版权所有。如若转载,请注明出处:蓝色梦想 - “指定的初始化字符串不符合ole db规定”错误的真相