ASP网页编程之用ADO毗连数据库的三种办法及其功能对照...
使用filesystemobject,可以对服务器上的文件进行操作,浏览、复制、移动、删除等。有ado的支持,asp对数据库的操作非常得心应手。你甚至可以像使用本地数据库那样,管理远程主机上的数据库,对表格、记录进行各种操作。ado|对照|毗连数据库|功能ADO毗连数据库一般有三种办法:SystemDSNConnection,DSN-lessConnection和OLEDBConnection,这是人人都很熟习的,它们的利用办法以下:(注:三种办法的区分在于利用的是哪一个关头字-DSN,Driver,DataSource,Provider。UID,PWD是ODBC的标志,UserID,Password是OLEDB的标志。出格指出的是DataSource在ODBC标志中暗示数据源,同等于DSN,在OLEDB标志中暗示服务器名或数据库名。)
SystemDSNConnection
Setcnn=Server.CreateObject("ADODB.Connection")
cnn.Open"DSN=your_dsn;UID=user_name;PWD=password;"
大概用OLEDB标志
cnn.Open"DataSource=your_dsn;UserID=user_name;Password=password;"
DSN-lessConnection
以SQLServer为例
Setcnn=Server.CreateObject("ADODB.Connection")
cnn.Open"driver={SQLServer};server=server_name;uid=user_name;pwd=pwd;database=pubs"
OLEDBConnection
以SQLServer为例
Setcnn=Server.CreateObject("ADODB.Connection")
cnn.Open"provider=sqloledb;datasource=server_name;initialcatalog=pubs;userid=user_name;password=pwd;"
上面,我们会商一下它们各自的功能。
从实质上说,SystemDSN和DSN-lessConnection都是经由过程ODBC与数据库举行毗连的,它们之间区分不年夜(现实上也的确云云)。有良多人说DSN-lessConnection要优于SystemDSNConnection,对这一点我不否决。(是否是前后有些冲突,刚说它们区分不年夜,如今又......)我已经分离对这两种毗连测试过,可是失利了。由于我的测试数据没有纪律,基本申明不了成绩(也许用假定查验能对照二者的功能,不外得算逝世)。因而我得出了却论:没有结论!厥后在网上看到一篇文章SystemDSNorDSN-lessConnection?算是有了谜底。
结论就是(这是原文):
ThesetestsshowedthatDSN-lessconnectionwereslightlyfasterthanSystemDSNConnections.Theincreaseinperformancewasnothingmonumental;thegreatestperformanceboostwasmere13%fasterwith64concurrentrequests.Forone,two,orfourconcurrentrequests,therewasvirtuallynoperformanceimprovement.Infact,nonoticeableimprovementisseeninaDSN-lessconnectionoveraSystemDSNuntilthereare10ormoreconcurrentconnections.
为何?由于SystemDSN在毗连时要读注册表。
如今只要OLEDB没有说了(打字真累)。OLEDB比ODBC要高效的多。
基本不必测试,这个结论是不言而喻的。假如你另有些嫌疑,倡议往看看毗连池(ConnectionPooling)先容那边有MDACframework的图示,从图中能够看出,经ODBC毗连是ADO-->OLEDB-->ODBCProvider-->ODBC-->driver-->数据库;经OLEDB是ADO-->OLEDB-->DBProvider-->数据库。哪一个更间接?固然是OLEDB!
OLEDB毗连数据库比ODBC快,检索数据比ODBC快。以是,我倡议每个在网上安家的人:用OLEDB!
Setcnn=Server.CreateObject("ADODB.Connection")
ConnectionstringforSQLServer
cnn.Open"Provider=SQLOLEDB;DataSource=srvName;InitialCatalog=DBname;UserID=user_id;Password=yourPassword;"
forAccess
cnn.Open"Provider=Microsoft.Jet.OLEDB.4.0;DataSource=db_path"
毗连数据库就是这么简单!ASP一般认为只能运行在IIS上,正如前面所提到的,这并不是十分正确,事实上,ASP也能运行在Apache上。ApacheASP可在任意Apache服务器上运行有限的ASP功能,所需做的,只需打开mod_perl。 ASP主要是用好六个对象,其实最主要的是用好其中两个:response和request,就可以随心所欲地控制网页变换和响应用户动作了。 虽然ASP也有很多网络教程。但是这些都不系统。都是半路出家,只是从一个例子告诉你怎么用。不会深入讨论,更不会将没有出现在例子里的方法都一一列举出来。 我可以结合自己的经验大致给你说一说,希望对你有所帮助,少走些弯路。 Application:这个存储服务端的数据,如果不清除,会直到web应用程序结束才清除(例如重启站点) 从事这个行业,那么你可以学ASP语言,简单快速上手,熟练dreamweav排版,写asp代码,熟练photoshop处理图片,打好基础就行了 掌握asp的特性而且一定要知道为什么。 ASP.Net和ASP的最大区别在于编程思维的转换,而不仅仅在于功能的增强。ASP使用VBS/JS这样的脚本语言混合html来编程,而那些脚本语言属于弱类型、面向结构的编程语言,而非面向对象,这就明显产生以下几个问题: 学习是为了用的,是为了让你的程序产生价值,把握住这个原则会比较轻松点。除此之外,课外时间一定要多参加一些社会实践活动,来锻炼自己的能力。
页:
[1]