|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
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。 |
|