仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 438|回复: 8
打印 上一主题 下一主题

[学习教程] ASP网页编程之用ADO毗连数据库的三种办法及其功能对照...

[复制链接]
小女巫 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 22:16:26 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
使用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。
沙发
发表于 2015-1-19 06:30:19 来自手机 | 只看该作者
ASP主要是用好六个对象,其实最主要的是用好其中两个:response和request,就可以随心所欲地控制网页变换和响应用户动作了。
爱飞 该用户已被删除
板凳
发表于 2015-1-27 11:58:54 | 只看该作者
虽然ASP也有很多网络教程。但是这些都不系统。都是半路出家,只是从一个例子告诉你怎么用。不会深入讨论,更不会将没有出现在例子里的方法都一一列举出来。
admin 该用户已被删除
地板
发表于 2015-2-5 09:44:15 | 只看该作者
我可以结合自己的经验大致给你说一说,希望对你有所帮助,少走些弯路。
第二个灵魂 该用户已被删除
5#
发表于 2015-2-11 08:49:59 | 只看该作者
Application:这个存储服务端的数据,如果不清除,会直到web应用程序结束才清除(例如重启站点)
金色的骷髅 该用户已被删除
6#
发表于 2015-3-2 07:27:35 | 只看该作者
从事这个行业,那么你可以学ASP语言,简单快速上手,熟练dreamweav排版,写asp代码,熟练photoshop处理图片,打好基础就行了
深爱那片海 该用户已被删除
7#
发表于 2015-3-11 03:03:34 | 只看该作者
掌握asp的特性而且一定要知道为什么。
再见西城 该用户已被删除
8#
发表于 2015-3-17 19:38:49 | 只看该作者
ASP.Net和ASP的最大区别在于编程思维的转换,而不仅仅在于功能的增强。ASP使用VBS/JS这样的脚本语言混合html来编程,而那些脚本语言属于弱类型、面向结构的编程语言,而非面向对象,这就明显产生以下几个问题:
变相怪杰 该用户已被删除
9#
发表于 2015-3-24 23:32:23 | 只看该作者
学习是为了用的,是为了让你的程序产生价值,把握住这个原则会比较轻松点。除此之外,课外时间一定要多参加一些社会实践活动,来锻炼自己的能力。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-24 04:30

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表