手把手教你使用VB来创建ASP组件
来源:互联网
作者:西部数码
时间:2008-04-09
西部数码-全国虚拟主机10强!40余项虚拟主机管理功能,全国领先!双线多线虚拟主机南北访问畅通无阻!免费赠送企业邮局,.CN域名,自助建站480元起,免费试用7天,满意再付款! P4主机租用799元/月.月付免压金!
NewRecordsetCD.AddNew
NewRecordsetCD.Fields("CD_ID") = Id
NewRecordsetCD.Fields("CD_Name") = Name
NewRecordsetCD.Fields("CD_Author") = Author
NewRecordsetCD.Fields("CD_Price") = Price
NewRecordsetCD.Fields("CD_Information") = Information
NewRecordsetCD.Update
End Sub
解释:使用 NewRecordsetCD.AddNew,
NewRecordsetCD.Fields(“Some_Key”)=Some_Value
NewRecordsetCD.Update 来添加一条纪录
4、 Delete方法:
这个方法的目的是为了删除库中的某条CD名和相关的信息。它的实现方法是通过查询表中唯一的CD_ID来定位CD信息,从而删除该行纪录
Private Sub Delete(Id As String)
Dim NewConn As New ADODB.Connection
Dim RecordsetDelete As New ADODB.Recordset
NewConn.Open "Provider=SQLOLEDB;DataSource=MUSE;Initial Catalog=Music;UserId=Wayne;Password=AbCdEfG"
’从表中删除一条信息
NewConn.Execute "DELETE FROM CD WHERE CD_ID ='" & Id & "'", adCmdText adExecuteNoRecords
End Sub
5、 IsEof方法
IsEof方法是用来判断是否还有更多的信息
其代码如下
Private Function IsEof() As Boolean
IsEof = RecordSetCD.EOF
End Function
6、 NextCD 方法
NextCD方法的目的是返回当前的CD信息,并将记录集的指针向下移动,这可以通过MoveNext方法和IsEof配合使用来实现
Private Sub NextCD(Id As Variant, Name As Variant, Author As Variant, Price As Variant, Information As Variant)
On Error Resume Next
If IsEof = True Then
Err.Raise vbObject 1, "CD Information", "End of cursor"
Exit Sub
End If
Id = RecordSetCD.Fields("CD_ID")
Name = RecordSetCD.Fields("CD_Name")
Author = RecordSetCD.Fields("CD_Author")
Price = RecordSetCD.Fields("CD_Price")
Information = RecordSetCD.Fields("CD_Information")
RecordSetCD.MoveNext
End Sub
好,我们已经编写好了组件,把它们编译成CD.dll后,你最好把他们注册一下 方法是在DOS界面下,输入regsvr32 CD.dll
五、ASP程序的编写
(1) ListCdInformation.asp 程序
这个程序实现的是检索数据库,把检索的结果显示为一张表,使用了刚才我们定义的组件。它打开表,然后列举每一张CD的信息。
〈%
Dim Cd_Info
Set Cd_Info= Server.CreateObject("CD.CD_Handle")
%〉
〈HTML〉
〈HEAD〉
〈META http-equiv="Content-Type" content="text/html; charset=gb2312"〉
〈TITLE〉CD信息列表〈/TITLE〉
〈/HEAD〉
〈BODY〉
〈B〉〈P ALIGN="center"〉CD信息列表〈/P〉〈/B〉
〈TABLE BORDER="2" CELLSPACING="1"〉
〈TR〉
〈TD〉〈P ALIGN="center"〉CD编号〈/TD〉
〈TD〉〈P ALIGN="center"〉CD名〈/TD〉
〈TD〉〈P ALIGN="center"〉作者〈/TD〉
〈TD〉〈P ALIGN="center"〉价格〈/TD〉
〈TD〉〈P ALIGN="center"〉CD简介〈/TD〉
〈/TR〉
〈TR〉〈/TR〉
〈%DIM ID
Dim Name
Dim Author
Dim Price
Dim Information
'初始化CD列表
Cd_Info.OpenDB
While Cd_Info.IsEof =False
Cd_Info.NextCD ID,Name,Author,Price,Information
%〉
〈TR〉
〈TD〉〈%=ID%〉〈/TD〉
〈TD〉〈%=Name%〉〈/TD〉
〈TD〉〈%=Author%〉〈/TD〉
〈TD〉〈%=Price%〉〈/TD〉
〈TD〉〈%=Information%〉〈/TD〉
〈TD〉〈Form Name = "Delete" METHOD ='POST' ACTION ="DeleteCdInformation.asp?id=〈%=ID%〉"〉
〈INPUT TYPE "SUBMIT" VALUES="删除此条" NAME="DELETE2"〉
〈/FORM〉
〈/TD〉
〈/TR〉
〈%
Wend
%〉
〈/TABEL〉
〈FORM NAME="ADD" METHOD ="POST" ACTION="AddCDInformation.asp"〉
〈input type ="submit" value="添加一条CD信息" Name="ADD2"〉
〈/FORM〉
〈/body〉
〈/html〉
(2)DeleteCdInformation.asp程序
点击每条信息后的删除键就会从表中把该条信息删除,它也调用了我们刚刚注册的组件。限于篇幅,我只把最重要的几行代码写出:
〈%
Dim CD_Info
Set CD_Info =Server.CreateObject(“CD.CD_Handle”)
CD_Info.Delete Request.QueryString(“ID”)
%〉
(3)AddCDInformation.html
本程序是一个纯HTML文本,只出现一个表单,让你填写新的CD信息,然后再发给InsertintoDB.asp来加入数据库。
文章整理:西部数码--专业提供域名注册、虚拟主机服务
http://www.west263.com
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!



