|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
ASP是依赖组件的,能访问数据库的组件好多就有好多种,再有就是你微软的工具可是什么都要收钱的啊!access|毛病|会见|数据 前天,N久之前做的一个ACCESS数据库的程序堕落了,程序都没有修改过,之前好好的,俄然就不可了。
毛病信息以下:
----------------------------------
MicrosoftOLEDBProviderforODBCDrivers毛病80004005
[Microsoft][ODBCMicrosoftAccessDriver]罕见毛病不克不及翻开注册表关头字Temporary(volatile)JetDSNforprocess0x728Thread0x854DBC0x276fb44Jet。
----------------------------------
因为比来一台服务器被人打击垮失落了正在重装,没工夫理这个成绩。厥后在伴侣(是该程序的用户哦)的多翻敦促下,决意弄定它。
一入手下手,还真不摸不清是怎样回事。在GOOGLE上搜了良多,众口一词,过滤往一堆没有了局的渣滓信息,失掉上面几个大概缘故原由:
1。微软已不更新ODBC,必要改用JET的体例毗连ACCESS数据库文件;
2。体系目次的权限产生的变动。
也有老帖子说甚么缘故原由是:“ACCESS数据库文件是ACCESS97版本的”,这个不必思索,我用的是ACCESS2000数据库。
关于第一个缘故原由,本来的毗连字串以下:
--ODBC毗连体例------------------------
mdbpath=server.MapPath("my.mdb.asp")
CnnStr="DBQ="&mdbpath&";DRIVER={MicrosoftAccessDriver(*.mdb)};uid=admin;pwd="
-------------------------------------
改用JET毗连后毗连字串为:
---JET毗连体例---------------------
CnnStr="Provider=Microsoft.Jet.OLEDB.4.0;UserId=admin;DataSource="&mdbpath&";Password=luntanbbs"
-------------------------------------
测试事后有效,固然提醒的毛病信息有点分歧:
----------------------------------
MicrosoftJETDatabaseEngine毛病80004005未指定的毛病
----------------------------------
最初反省第二个缘故原由:体系目次权限不敷。经扣问,本来因为出于平安的思索一同事把该服务器的WINNT目次设置为Administrators、system“完整把持”,users只读。
可是,按事理,如许的权限设置,ODBC的驱动程序处于winntsystem32odbcjt32.dll这个也是可读的,岂非是由于短少“实行”权限?
我把winntsystem32目次下一切以odbc开首的DLL文件全体授与“实行”权限,发明仍是一样的毛病信息。随着我干脆把全部system32目次设成everyone可实行,但是一测试仍然不可。
岂非是另有其他文件被ODBC或JET挪用但又不在这个system32目次下且又没有失掉充实受权而招致失利?
正在想的时分,蓦地望见winnt emp目次。嘿,我把temp目次设置成everyone可“写进”看看。
一测试,嘿,成了。利用ODBC毗连体例的程序,乐成的读取更新ACCESS数据库中的纪录。
成心思的是,利用JET毗连体例的程序,却报另外一个毛病:
-------------------------------------------
MicrosoftJETDatabaseEngine毛病80040e4d没法启动使用程序。
事情组信息文件丧失,或是已被别的用户以独有体例翻开。
-------------------------------------------
嘿嘿,不晓得这个JET的毛病又怎样回事呢?
偶然间再弄弄它吧。假如你晓得,请给我发个复兴哦。ASP最大的缺点在于网络的安全性和可靠性,企业将经营数据放在开放的平台上,最大的担忧就是如何保证这些数据不被其他人破坏。 |
|