愤怒的大鸟 发表于 2015-1-16 23:09:11

ASP网页设计ASP数据库毗连的完成

专业性的服务。有的ASP商提供垂直型的应用服务,针对某一特定行业提供应用服务。数据|数据库|数据库毗连ASP数据库毗连的完成

夏春涛

(束缚军信息工程年夜学电子手艺学院102教研室,河南郑州450004)

(Email:xct-tom@tom.com)



摘要:本文给出了ASP中数据库毗连的多种完成办法。

关头词:ASP;ADO;OLE-DB;ODBC;数据库毗连



1弁言



ASP是今朝最盛行的Web程序计划手艺之一,它利用ADO手艺对数据库举行存取。ADO是Microsoft今朝次要的数据存取手艺,它是Microsoft各类数据存取手艺,如ODBC、DAO、RDO、OLE-DB演变开展的了局。

ADO是封装了OLE-DB庞大接口的COM工具,它以极其复杂的COM接口来存取各类分歧的数据。是ADO数据存取的架构图。从图中能够看出,ADO能够间接藉由OLE-DB来存取分歧数据源的数据,也能够直接籍由ODBC来存取干系型数据源的数据。本文针对这两种体例开端切磋ASP使用程序中数据库毗连的完成。



















图1ADO数据存取架构

Application/Browser
ADO
OLE-DB
ODBC
SQLData
NonSQLData
Mainframeand

LegancyData



























2Connection工具



ADO中的Connection工具代表与底层数据供给程序的一个毗连,它坚持着数据供给程序的信息。在ASP使用情况下,Connection工具代表从Web服务器到数据库服务器的一个毗连。Connection工具挪用Open办法来完成与数据库的毗连,它的语法以下:

Connection.Open,,,

Open办法的参数及申明如表1:



表1Open办法的参数及申明



参数
说明

ConnectionString
包括毗连细节的字符串。能够是ODBCDSN的称号、数据链接文件的称号或实在的毗连细节。可选参数。

UserID
毗连时代,用户利用的名字。掩盖毗连字符串中供应的任何用户名。可选参数。

Password
用户的口令。掩盖毗连字符串中供应的任何口令。可选参数。

Options
能够是adAsyncConnect,指定异步地创建毗连。疏忽这个参数,则创建一个同步毗连。注:由于剧本言语不克不及吸收来自ADO的事务,以是异步毗连不必于ASP情况,一样平常疏忽这个参数。




从表1能够看出,Open办法完成与数据库毗连的关头,是给出准确的ConnectionString。以下以SQLServer2000数据库为例,给出各类毗连体例下的ConnectionString。



3OLE-DB毗连体例



3.1字符串体例

ConnectionString="Provider=SQLOLEDB.1;DataSource=YourSrc;

UID=YourUid;PWD=YourPwd;Database=YourDB"



ConnectionString="Provider=SQLOLEDB.1;DataSource=YourSrc;

UserID=YourUid;Password=YourPwd;InitialCatalog=YourDB"

个中,Provider为服务于毗连的底层OLE-DB数据供给程序的称号;DataSource为服务于底层数据供给程序的数据源称号;UID或UserID为毗连时利用的用户名;PWD或Password为毗连时利用的暗码;Database或InitialCatalog为位于数据库服务器上的一个特定命据库。

3.2数据链接文件体例

创立一个空文本文件,将其扩大名改成.udl来创立一个数据链接文件。双击该文件翻开DataLinkProperties对话框,在Provider页选择供应者(不要选择基于ODBC的供应者,由于如许实践上是直接藉由ODBC完成数据库毗连),在Connection页指定完成毗连的细节。利用数据链接文件举行毗连的ConnectionString以下:

ConnectionString="FileName=C:YourFile.udl"

用记事本翻开数据链接文件,能够看到第三行文本是一个毗连字符串,指定了毗连的细节。假如在Connection页选中了“Allowsavingpassword”,则在该文件中也会纪录用户的暗码信息。



4ODBC毗连体例



利用ODBC毗连体例,起首要设置ODBC数据源。ODBC数据源设置乐成后,就能够响应指定上面先容的毗连字符串举行数据库毗连。

4.1ODBC的体系DSN毗连体例

ConnectionString="DSN=SysDSNName;UID=YourUid;PWD=YourPwd;Database=YourDB"

个中,DSN为体系DSN的称号,别的参数与3.1中先容的参数不异。

4.2ODBC的文件DSN毗连体例

ConnectionString="FileDSN=FileDSNName;UID=YourUid;PWD=YourPwd;Database=YourDB"

个中,FileDSN为文件DSN的称号,别的参数与3.1中先容的参数不异。

用记事本翻开响应的.dsn文件(一样平常位于C:ProgramFilesCommonFilesODBCDataSources目次下),能够看到,相似于数据链接文件,该文件中也指定了毗连的细节。

4.3ODBC的无DSN毗连体例

ConnectionString="Driver={SQLServer};Server=YourServer;

UID=YourUid;PWD=YourPwd;Database=YourDB")

此体例不必设置ODBC数据源。个中,Driver为ODBC驱动程序称号,Server为数据库服务器称号,别的参数与3.1中先容的参数不异。

4.4数据链接文件体例

起首,接纳3.2中的办法创立数据链接文件。但举行文件设置时,在Provider页当选择基于ODBC的供应者――MicrosoftOLEDBProviderforODBCDrivers。此体例的ConnectionString与3.2中先容的不异。



5实例



上面是接纳OLE-DB的字符串体例,毗连到SQLServer2000数据库的示例代码:

<%

ConnectionString="Provider=SQLOLEDB.1;DataSource=YourSrc;

UID=YourUid;PWD=YourPwd;Database=YourDB";初始化毗连字符串

SetConn=Server.CreateObject("ADODB.Connection");创立Connection工具

Conn.OpenConnectionString;挪用Open办法,创建毗连

…;举行数据存取操纵

Conn.Close;封闭毗连

SetConn=Nothing;开释Connection工具

%>

必要注重的是,应尽量晚的创建毗连,同时又尽量早的封闭毗连,如许包管毗连翻开的工夫最短,能够充实发扬OLE-DB的毗连缓冲池的感化,节俭毗连资本;别的,在实践使用中,为制止在每一个ASP页面中都输出ConnectionString中的毗连细节(这会给程序保护带来贫苦),一样平常利用包括文件或毗连形态来存储ConnectionString,办法以下。</p>使用cdonts,可以发送、查看邮件,实现webmail的功能。结合wsh,可以实现对nt主机的管理,如nt用户管理、iis虚拟主机设置、exchange邮箱设置等等,就像管理本地机一样方便。

山那边是海 发表于 2015-1-20 07:39:45

我们必须明确一个大方向,不要只是停留在因为学而去学,我们应有方向应有目标.

因胸联盟 发表于 2015-1-28 23:52:09

我就感觉到ASP和一些常用的数据库编程以及软件工程方面的思想是非常重要的。我现在也在尝试自己做网页,这其中就用到了ASP,我想它的作用是可想而知的。

柔情似水 发表于 2015-2-5 23:01:25

我就感觉到ASP和一些常用的数据库编程以及软件工程方面的思想是非常重要的。我现在也在尝试自己做网页,这其中就用到了ASP,我想它的作用是可想而知的。

透明 发表于 2015-2-14 02:14:36

尽管MS自己讲C#内核中更多的象VC,但实际上我还是认为它和Java更象一些吧。首先它是面向对象的编程语言,而不是一种脚本,所以它具有面向对象编程语言的一切特性,比如封装性、继承性、多态性等等,这就解决了刚才谈到的ASP的那些弱点。

仓酷云 发表于 2015-3-4 04:04:55

如何更好的使自己的东西看上去很不错等等。其实这些都不是问题的实质,我们可以在实践中不断提升自己,不断充实自己。

灵魂腐蚀 发表于 2015-3-11 16:16:02

学习ASP其实应该上升到如何学习程序设计这种境界,其实学习程序设计又是接受一种编程思想。比如ASP如何学习,你也许在以前的学习中碰到过。以下我仔细给你说几点:

飘灵儿 发表于 2015-3-19 01:59:06

ASP的语言不仅仅只是命令格式差不多,而是包含在<%%>之内的命令完全就是VB语法。虽然ASP也是做为单独的一个技术来提出的,但他就是完全继承了VB所有的功能。

冷月葬花魂 发表于 2015-3-27 03:23:42

如何更好的使自己的东西看上去很不错等等。其实这些都不是问题的实质,我们可以在实践中不断提升自己,不断充实自己。
页: [1]
查看完整版本: ASP网页设计ASP数据库毗连的完成