ASP网页编程之关于ASP会见ACCESS数据的毛病的切磋
ASP是依赖组件的,能访问数据库的组件好多就有好多种,再有就是你微软的工具可是什么都要收钱的啊!access|毛病|会见|数据 前天,N久之前做的一个ACCESS数据库的程序堕落了,程序都没有修改过,之前好好的,俄然就不可了。毛病信息以下:
----------------------------------
MicrosoftOLEDBProviderforODBCDrivers毛病80004005
罕见毛病不克不及翻开注册表关头字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最大的缺点在于网络的安全性和可靠性,企业将经营数据放在开放的平台上,最大的担忧就是如何保证这些数据不被其他人破坏。 尽管MS自己讲C#内核中更多的象VC,但实际上我还是认为它和Java更象一些吧。首先它是面向对象的编程语言,而不是一种脚本,所以它具有面向对象编程语言的一切特性,比如封装性、继承性、多态性等等,这就解决了刚才谈到的ASP的那些弱点。 ASP(ActiveServerPages)是Microsfot公司1996年11月推出的WEB应用程序开发技术,它既不是一种程序语言,也不是一种开发工具,而是一种技术框架,不须使用微软的产品就能编写它的代码,能产生和执行动态、交互式、高效率的站占服务器的应用程序。 ASP的语言不仅仅只是命令格式差不多,而是包含在<%%>之内的命令完全就是VB语法。虽然ASP也是做为单独的一个技术来提出的,但他就是完全继承了VB所有的功能。 接下来就不能纸上谈兵了,最好的方法其实是实践。实践,只能算是让你掌握语言特性用的。而提倡做实际的Project也不是太好,因为你还没有熟练的能力去综合各种技术,这样只能使你自己越来越迷糊。 学习是为了用的,是为了让你的程序产生价值,把握住这个原则会比较轻松点。除此之外,课外时间一定要多参加一些社会实践活动,来锻炼自己的能力。 ASP的语言不仅仅只是命令格式差不多,而是包含在<%%>之内的命令完全就是VB语法。虽然ASP也是做为单独的一个技术来提出的,但他就是完全继承了VB所有的功能。
页:
[1]