专注于互联网--专注于架构

最新标签
网站地图
文章索引
Rss订阅

首页 »Asp教程 » activex组件:常用的 ASP ActiveX 组件 »正文

activex组件:常用的 ASP ActiveX 组件

来源: 发布时间:星期四, 2009年2月12日 浏览:210次 评论:0


当你用 ASP 编写服务器端应用必须依靠 ActiveX
组件来强大 Web
应用功能譬如:你需要连接数据库对数据库进行在线操作等等继上篇介绍了
AD Rotator 组件后本篇将接着给大家介绍其它些常用 ASP ActiveX
组件使用思路方法



  最近仍有不少朋友来信问我 ASP 是否只能在 Microsoft IIS
上运行是否可以在非 NT
平台上运作?本来这个问题我已经回答过很多遍了 :
我只是听说过有某种可以支持软件Software却从没见过些热情朋友仍然孜孜不倦地来信询问于是在朋友们盛情的下我访遍了
ASP 相关站点竟惊奇发现原来 ASP 确是可以运行在其它非 NT
平台上因此在本篇开头我就给来信朋友们简要介绍下如何在非
NT 平台上使用 ASP



  要在非 NT 平台上开发并运行 ASP
应用我们可以依赖于套名为 Instant ASP
第 3方软件Software广告标语非常吸引人“ASP Anytime, Anywhere”我想所有
ASP 开发者们看到如此标语必然兴奋不已这套由 Halcyon
软件Software公司开发软件Software使得你无需重复开发原有 ASP
应用即可以将它运行在任何操作平台上 !
这样非但节省了大量开发时间而且使得 ASP
真正成为了种跨平台 Internet、 Intranet 或 Extranet 应用
Instant ASP 本身其实是套基于 Java
应用因此通过它你可以将基于 WEB ASP
应用运行在任何平台上下表列出了 Instant ASP
目前版本所支持操作平台







  更令人吃惊是 Instant ASP 不仅提供了 ASP
运作环境而且它较目前市场上 ASP
应用还提供了更为强大和实用功能它将 ActiveX 组件和 Enterprise
Java Beans 或者 CORBA-compliant objects 组合起来从而使 ASP
有了更为广泛应用它同样提供了通过 ADO
接口访问连接各种数据库并生成动态页面强大功能对于开发者而言可以使用自己擅长编程语言或工具如
:Visual Basic, Jscript, VBScript, C, Java, HTML, Delphi , MS Visual InterDev
等等来进行开发有关 Instant ASP
具体安装和操作我就不在这里展开了有兴趣朋友可以到它站点上去看看
halcyonsoft.com你还可以免费下载个试用版试试
  继上篇中作者给大家介绍了 AD Rotator
组件使用思路方法后今天我们接着来看看其它些 ASP 常用组件
   、 Database Access 组件
  我们在 WEB 服务器上运用 WEB
应用进行最常见和最实用任务就是访问服务器端数据库
ASP 内建 Database Access 组件使得我们能够轻而易举地通过 ActiveX Data
Objects (ADO)
访问存储在服务器端数据库或其他表格化数据结构中信息 ADO
是对当前微软所支持数据库进行操作最有效和最简单直接思路方法它是种功能强大数据访问编程模式从而使得大部分数据源可编程属性得以直接扩展到你
Active Server 页面上可以使用 ADO 去编写紧凑简明脚本以便连接到
Open Database Connectivity (ODBC) 兼容数据库和 OLE DB 兼容数据源这样
ASP 员就可以访问任何和 ODBC 兼容数据库包括 MS SQL SERVER、Access、Oracle
等等如果您是个对数据库连接有定了解脚本编写人员那么您将发现
ADO
命令语句并不复杂而且容易掌握同样地如果您是个经验丰富数据库编程人员您将会正确认识
ADO 先进和语言无关性和查询处理功能熟悉 VB
数据库编程朋友会发现 ADO 和RDO (Remote Data Objects)
有某种类似地方但据说 ADO 访问速度更快内存需要更小
   下面给大家简要介绍下利用 ASP Database Access 组件通过 ADO
连接并操作 WEB 数据库步骤
   第步 : 指定想要连接数据库

有 DSN 和 DSN-less
两种思路方法
   DSN(Data Source Name 数据源名称 ):
建立个系统数据源名称思路方法如下 :
   1、单击“开始”选设置控制面板
   2、双击图标“32 位 ODBC” , 将弹出个对话框选标签“
DSN”
   3、单击“Add”添加个 DSN 入口 , 选择如“Microsoft Access Drive”并确认

   4、在“Data Source Name”栏里输入你希望指定 DSN, 然后单击“Select”选择数据库存放位置你可以按“Browse”来选取

   5、以上步骤完成后在 ASP 中指定 DSN如下 :
   < %connstr = \"DSN\"%>
DSN-less: 是另种通过在 ASP
文件里直接指定数据库文件所在位置而无需建立 DSN
思路方法由于许多公司没有自己 WEB
服务器他们网站WebSite往往是存放在远端虚拟服务器上因此要建立和修改
DSN 设置比较麻烦而使用 DSN-less
思路方法直接指定远端数据库所在位置恰恰解决了这问题思路方法如下
:



< %

connstr =
\"DBQ=\"+server.mappath(\"database/source.mdb\")+\";DefaultDir=;DRIVER={Microsoft
Access Driver (*.mdb)};DriverId=25;FIL=MS
Access;ImplicitCommitSync=Yes;MaxBufferSize=512;MaxScanRows=8;PageTimeout=5;SafeTransactions=0;Threads=3;UserCommitSync=Yes;\"

%>




  
在指定了想要连接数据库后就可以通过以下思路方法连接并打开数据库
:
< %

Set Conn = Server.CreateObject(\"ADODB.Connection\")Conn.Open constr

%>




  第 2步 : 指定想要执行 SQL 指令可以使用 RecordSet
  当连接了数据库后就可以对数据库进行操作比如查询、删除、更新等等这些操作都是通过
SQL 指令来完成如下例在数据库表 datebase 中查询所有姓名中有“A”记录
:
< %

sql=\"select * from datebase where name like \'A%%\'\"

Set rs = Conn.Execute(sql)

%>
 尽管 Connection 对象简化了连接数据库和查询任务但 Connection
对象仍有许多不足确切地说检索和显示数据库信息 Connection
对象不能用于创建脚本您必须确切知道要对数据库作出更改然后才能使用查询实现更改对于检索数据、检查结果、更改数据库
ADO 提供了 Record 对象正如它名称所暗示那样 Record
对象有许多您可以使用特性根据您查询限制检索并且显示组数据库行即记录
Record
对象保持查询返回记录位置允许您项逐步扫描结果根据
Record
对象指针类型属性设置您可以滚动和更新记录数据库指针可以让您在组记录中定位到特定指针还用于检索和检查记录然后在这些记录基础上执行操作
Record
对象有些属性可用于精确地控制指针行为提高您检查和更新结果能力

   Record 使用思路方法如下 :
   Set rs = Server.CreateObject(\"ADODB.Record\")
   rs.Open SQL 指令 , Conn, 1, 1 \' 读取
   或
   rs.Open SQL 指令 , Conn, 1, 3 \' 新增、修改、或删除
  第 3步 : 使用 RecordSet 属性和思路方法并显示执行结果
  通过以上指令我们创建了个包含数据游标 (RecordSet)“rs”事实上游标是存储在活动内存中类似记录和字段东西当通过
RecordSet
组件创建个游标时它从数据提供者得到个数据集并用它来充实游标我们可以想象
ADO 产生 RecordSet
个象电子表格记录它有行行记录在任何时候都有行是它当前行


RecordSet 字段是用 RecordSet Field 集合表示下面列出了所创建
RecordSet 对象 (游标 )些属性和思路方法
:
   rs.Fields.Count: RecordSet 对象字段总数
   rs(I).Name: 第 I 个字段名称 I 由 0 算起到 rs.Fields.Count-1
   rs(I): 读取第 I 个字段数据 I 由 0 算起到 rs.Fields.Count-1
   rs(\" 字段名称 \"): 读取指定字段数据
   rs.RecordCount: 游标中数据记录总数
   rs.EOF: 是否已指到最后条记录
   rs.MoveNext: 将指标移到下笔记录
   rs.MovePrev: 将指标移到上笔记录
   rs.MoveFirst: 将指标移到第笔记录
   rs.MoveLast: 将指标移到最后笔记录
   rs.Close: 关闭 RecordSet 对象
   有关 ADO 其他介绍作者将在今后给大家详细讲解
   2、 Content Linking 组件
  如果你网站WebSite有系列相互关联页面 Content Linking
组件将非常适合你需求它非但可以使你在这些页面中建立个目录表而且还可以在它们中间建立动态连接并自动生成和更新目录表及先前和后续
Web
导航链接这对于列出联机报刊、电子读物网站WebSite以及论坛邮件是十分理想选择



  Content Linking 组件创建管理 URL 列表 Nextlink 对象要使用 Content
Linking 组件必须需要先创建 Content Linking List 文件 Content Linking
组件正是通过读取这个文件来获得处理我们希望链接所有页面信息事实上该文件是个纯文本文件其内容如下
:

page1.htm _disibledevent=> char=gb2312\">

< title> 网络电子读物宝藏 < /title>

< /head>

< body>

< p> 网络电子读物导航

< %

Set Link = Server.CreateObject(\"MSWC.NextLink\")

count = Link.GetListCount(\"nextlink.txt\")

Dim I

For I=1 to count

%>

< ul>< li>< a href=\"< %= Link.GetNthURL(\"nextlink.txt\",
I) %>\">< %= Link.GetNthDescription(\"nextlink.txt\", I) %><
/a>

< % Next %>

< /body>

< /html>




   在以上代码中我们先用 GetListCount 思路方法确定在文件
nextlink.txt 中有多少条项目然后利用循环语句并使用 GetNthURL、
GetNthDescription 思路方法逐将存储在 nextlink.txt
文件中内容读出并显示给客户端浏览器
   下面列出了 Content Linking 组件所有可使用思路方法
GetListCount(file) 统计内容链接列表文件中链接项目数
   GetNextURL(file) 获取内容链接列表文件中所列 URL
   GetPreviousDescription(file)
获取内容链接列表文件中所列介绍说明行
   GetListIndex(file) 获取内容链接列表文件中当前页索引
   GetNthDescription(file,index) 获取内容链接列表文件中所列第 N
介绍说明
   GetPreviousUR(file) 获取内容链接列表文件中所列 URL

   GetNextDescription(file)
获取内容链接列表文件中所列介绍说明
   GetNthURL(file,index) 获取内容链接列表文件中所列第 N
介绍说明
  在我们创建了网站WebSite总导航页面后我们当然还希望在每页中添加个“上页”、“下页”导航超链下面我们就来看看如何实现导航超链



  由于考虑到你网站WebSite可能包含了上千或更多页面所以我们不可能在每个页面中都编写实现导航超链
ASP 代码因此我们必须利用前几篇中所学到服务器端包容 SSI这样就避免了大量重复作业请看下例
:
   < !--# file=\"nextprev.inc\"-->


   只要将这端代码放在每个页面中即可 Nextprev.inc
文件内容如下 :
< %

Set Link = Server.CreateObject(\"MSWC.NextLink\")

count = Link.GetListCount(\"nextlink.txt\")

current = link.GetListIndex(\"nextlink.txt\")

If current > 1 Then

%>

< a href=\"< %= Link.GetPreviousURL(\"nextlink.txt\") %>\">
页 < /a>

< %

End If

If current < count Then

%>

< a href=\"< %= Link.GetNextURL(\"nextlink.txt\") %>\">
页 < /a>

< % End If %>

0

相关文章

读者评论

发表评论

  • 昵称:
  • 内容: