您的位置: 首页 > 技术文档 > 网络编程 > asp快速开发方法之数据操作
透彻掌握ASP分页技术 回到列表 Membership角色与权限管理
 asp快速开发方法之数据操作

作者:wowhhz 时间: 2007-08-08 文档类型:原创 来自:蓝色理想

第 1 页 asp快速开发方法之数据操作 [1]
第 2 页 asp快速开发方法之数据操作 [2]
第 3 页 asp快速开发方法之数据操作 [3]

现在相对简单多了,如果有多个操作页面我们只要导入连接文件就可以了,不过还是不够简洁,哪里不简洁?
一直在创建server,一直在写close,这样很容易出错,并且看起来与内容无关的太多。

那我再改进下:
把conn.asp文件改成:
<%
Dim Conn
Dim Rs
Sub CloseDatabase
    Conn.close
    Set Conn = Nothing
End Sub
Sub OpenDatabase
    Dim StrServer,StrUid,StrSaPwd,StrDbName
    StrServer="192.168.1.1"        '数据库服务器名
    StrUid="sa"            '您的登录帐号
    StrSaPwd=""            '您的登录密码
    StrDbName="cnbruce.mdb"        '您的数据库名称
        Set Conn = Server.CreateObject("ADODB.Connection")
        '用于连接ACCESS
        Conn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & Server.MapPath(StrDbName)
        '用于连接MSSQL
        'Conn.ConnectionString = "Driver={sql server};driver={SQL server};server="&StrServer&";uid="&StrUid&";pwd="&StrSaPwd&";database=
"&StrDbName
        set rs=server.CreateObject("ADODB.RecordSet")
        conn.open
        if Err Then
            err.Clear
            Set Conn = Nothing
            GBL_CHK_TempStr = GBL_CHK_TempStr & "数据库连接错误!"
            Response.Write GBL_CHK_TempStr
            Response.End
        End If   
End Sub
%>

现在我们的showit.asp可以这样写:

showit.asp
<!--#include file="conn.asp" -->
<%
sql = "Select * from cnarticle"
opendatabase
rs.Open sql,conn,1,1
If not Rs.eof then
    Do Until rs.EOF
    response.write("文章标题是:"& rs("cn_title"))
    response.write("<br>文章作者是:"& rs("cn_author"))
    response.write("<br>文章加入时间是:"& rs("cn_time"))
    response.write("<br>文章内容是:"& rs("cn_content"))
    response.write("<hr>")
    rs.MoveNext
    Loop
else
    response.write ("暂时还没有文章")
end if
Closedatabase
%>

嗯,我们又少写了一些东西,这样是最简单的吗?当然不是!还可以更简单。
使用GetRows把查询出来的数据传给一个变量,使用ubound方法取得数据记录条数。
不明白?没关系,让我们继续往下看:

再建个文件:sql.asp

sql.asp
<%
Class DataTable
    public Function SelectData(sql)
        If sql<>"" then
            opendatabase
            Rs.open sql,conn,1,1
            If not Rs.eof then
                Thedata=Rs.GetRows(-1)
                Closedatabase
            Else
                Closedatabase
            End If
        End If
        SelectData=Thedata
    End Function
End Class
%>

嗯,复制它就可以了,现在我们的showit.asp可以简单地这样写:

showit.asp
<!--#include file="conn.asp" -->
<!--#include file="sql.asp" -->
<%
sql = "Select * from cnarticle"
set loadData=new DataTable
Thedata=loadData.SelectData(sql)
If isarray(Thedata) then
    Num=ubound(Thedata,2)
    for i=0 to Num
        response.write("文章标题是:"& Thedata(1,i))
        response.write("<br>文章作者是:"& Thedata(2,i))
        response.write("<br>文章加入时间是:"& Thedata(3,i))
        response.write("<br>文章内容是:"& Thedata(4,i))
        response.write("<hr>")
    next
else
    response.write("暂时还没有文章")
End If
%>

呵呵,这样,我们只要用两句语句就完成了数据的读取。同样的,通过在sql.asp中加入:

<%
    public Function SelectDataNum(sql)
        If sql<>"" then
            Opendatabase
            Rs.open sql,conn,1,1
            If not Rs.eof then
                Thedata=Rs.GetRows(-1)
                Closedatabase
                Num=ubound(Thedata,2)
            Else
                Closedatabase
            End If
        End If
        SelectDataNum=Num
    End Function
%>

我们就可以使用:

<%
sql = "Select * from cnarticle"
set loadData=new DataTable
Num=loadData.SelectDataNum(sql)
%>

来取得记录条数,可以用于分页或者用户名是否重复的判断。

出处:蓝色理想
责任编辑:moby

上一页 asp快速开发方法之数据操作 [1] 下一页 asp快速开发方法之数据操作 [3]

◎进入论坛网络编程版块参加讨论

相关文章 更多相关链接
不织布草莓手工做法
透彻掌握ASP分页技术
Flash处理外部XML文档数据
JS+ASP打造无刷新新闻列表
FLASH与ASP通信原理入门
热门搜索:CSS Fireworks 设计比赛 网页制作 Dreamweaver Studio8 Flash
站点最新 站点最新列表
跟我去香港:The third Day
单件模式结合命令链模式
快乐狗原创动漫大赛
元素层叠级别及z-index剖析
CSS 浏览器的等宽空格
电影变形金刚概念画欣赏
疯狂的程序员 第三十五回
疯狂的程序员 第三十四回
疯狂的程序员 第三十三回
运用ASDoc工具
栏目最新 栏目最新列表
火星人的耳机
公司正式宣布创业失败
用corelDEAW 12打造唇膏
二行代码解决全部网页木马
一行代码解决iframe挂马
Photoshop制作星空爆炸效果
CorelDraw 12打造休闲裤
Firework如何画特殊的切角图形
Firework打造韩式风格的手提袋
flash实例:打造佛光效果
 
>> 分页 首页 前页 后页 尾页 页次:2/31个记录/页 转到 页 共3个记录

蓝色理想版权申明:除部分特别声明不要转载,或者授权我站独家播发的文章外,大家可以自由转载我站点的原创文章,但原作者和来自我站的链接必须保留(非我站原创的,按照原来自一节,自行链接)。文章版权归我站和作者共有。

转载要求:转载之图片、文件,链接请不要盗链到本站,且不准打上各自站点的水印,亦不能抹去我站点水印。

特别注意:本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有,文章若有侵犯作者版权,请与我们联系,我们将立即删除修改。

本文总共有 10 条评论,现在显示最新的 5 条。评分:- llllllllllllllllllll + 评分人数: 7 ,平均分: 3.00


xuye281 Publish at 2008-5-9 1:31:41 评分4
dofus kamas
lost63 Publish at 2007-10-9 12:21:46 评分5
个人认为这篇文章写得很出色,我给它评5分,并收藏这篇文章
youfree Publish at 2007-9-29 10:42:18
你们觉得过时吗,我不觉得,任何技术都有用武之地,只不过现在的技术员眼高手低,知道中国有多少中小企业吗。知道他们有自己独有的需求吗,你认为那些又大又复杂的ERP之类的软件对他们有用吗,实际上,用ASP写一个小的程序,即使用ACCSEE数据库,也能充分满足他们的要求。退一步说,那些电脑公司,用VBA就能优化他们的工作。BTW,我是电脑公司的,经常接到客户一些要求开发提高工作效率的小程序。有高手或练手可与我联系:qq:281717876.
thirteenvik Publish at 2007-9-5 11:59:12 评分4
感谢作者的清晰的思路,呵呵。Asp它毕竟是windows整体开发过程中不可或缺的一个阶段
从ADO->ADO.NET 他的思想本质是没有变的。
所以透彻的理解和学习ASP对数据库的操作还是有很大的帮助的。即便是现在让我去做.NET我觉得两个月我就可以做一个站点出来。
不过作者的类写的类有点简单,应该结合存储过程来写,呵呵,把 Sql语句封装到数据库中。期待作者更高的版本的Sql.asp类 。呵呵。

xuzihao84 Publish at 2007-9-3 0:24:20
楼上的,我相信你们以前也是从这些东西开始学习的吧,你们是高手了,到是对于新手来说还是有很大的帮助的,自己学会了就牛B了吗?

查看全部评论

您的评论
用户名:  口令:
说明:输入正确的用户名和密码才能参与评论。如果您不是本站会员,你可以注册 为本站会员。
注意:文章中的链接、内容等需要修改的错误,请用报告错误,以利文档及时修改。
不评分 1 2 3 4 5
注意:请不要在评论中含与内容无关的广告链接,违者封ID
请您注意:
·不良评论请用报告管理员,以利管理员及时删除。
·尊重网上道德,遵守中华人民共和国的各项有关法律法规
·承担一切因您的行为而直接或间接导致的民事或刑事法律责任
·本站评论管理人员有权保留或删除其管辖评论中的任意内容
·您在本站发表的作品,本站有权在网站内转载或引用
·参与本评论即表明您已经阅读并接受上述条款
推荐文档 | 打印文档 | 评论文档 | 报告错误  
专业书推荐 更多内容
大师之路--Photoshop 完全解析
《超越CSS》新书上市
Don't Make Me Think 第2版
HTML与CSS入门经典(第7版)
《FLASH MX2004网站开发精粹》
《CSS入门经典》
《设计师谈网页设计思维》
作品集 更多内容

huadian 主角和过客&nbsp; HK&#45;XM8突击步枪 Rollei中国 陈小艺网站 东巴文化 浦蒲 绿色狂想