首页 > 开发 > 综合 > 正文

VBS的数据库操作类,

2024-07-21 02:15:39
字体:
来源:转载
供稿:网友
  • 本文来源于网页设计爱好者web开发社区http://www.html.org.cn收集整理,欢迎访问。
  • <!--
    蛙蛙推荐:vbs的数据库操作类,这个类实现了平时主要的数据库操作,因为我们天天都在和数据库打交道,有时候用这样一个类也挺方便的,但是不知道实用性怎么样,因为在性能和错误处理方面没有做很多考虑,所以不知道它的通用性如何.
    如果谁能再给这个类加上动态的错误处理的或者优化一下性能,就更完美了.ps:做这个类也是为了练习一下vbs类的使用.
    -->
    <%
    class classado
    private conn_c
    private rs_c
    public strconn
    private sub class_initialize'定义类的初始化事件

    end sub

    private sub class_terminate ' 设置 terminate 事件。 '定义类的清空事件
    rs_c.close
    set rs_c=nothing
    conn_c.close
    set conn_c=nothing
    end sub

    public function opendb() '打开数据库
    if isempty(strconn) then
    response.write("没有设置数据库连接字符串")
    response.end
    end if
    if isempty(conn_c) then
    set conn_c=server.createobject("adodb.connection")
    conn_c.open strconn
    else
    response.write("数据库已经打开了")
    response.end
    end if
    end function
    public function getrs(byval strsql) '获取记录集
    if isempty(conn_c) then
    opendb()
    end if

    set rs_c=server.createobject("adodb.recordset")
    rs_c.open strsql,conn_c,1,1
    set getrs=rs_c
    end function
    public function exesql(byval strsql) '执行一条sql语句,用来插入,更新,删除记录
    if isempty(conn_c) then
    opendb()
    end if
    conn_c.execute(strsql)
    end function
    end class
    %>
    <%
    'on error resume next '调试程序的时候请把此句去掉
    strconn="driver={sql server};server=192.168.0.110;database=northwind;uid=sa;pwd=sa;"
    set c=new classado
    c.strconn=strconn
    c.opendb()
    strsql="select employeeid,titleofcourtesy + '' + lastname + '' + firstname as fullname from employees"
    arr_wawa=c.getrs(strsql).getrows()
    set rs=c.getrs(strsql)
    %>
    <table width="100%" border="0" cellspacing="1">
    <%
    if not rs.eof then
    for i=0 to rs.fields.count-1
    response.write rs.fields(i).name&"&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"
    next
    response.write "<br>"
    do while not rs.eof
    for i=0 to rs.fields.count-1
    response.write rs.fields(i).value&"&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"
    next
    response.write "<br>"
    rs.movenext
    loop
    end if
    %>
    <hr>

    <table width="100%" border="0" cellspacing="1">
    <% if not isempty(arr_wawa) then %>
    <% for i=0 to ubound(arr_wawa,2) %>
    <tr>
    <% for j=0 to ubound(arr_wawa,1) %>
    <td><%= arr_wawa(j,i) %></td>
    <% next %>
    </tr>
    <% next %>
    <% else %>
    <tr>
    <td>没有记录</td>
    </tr>
    <% end if %>
    </table>



    发表评论 共有条评论
    用户名: 密码:
    验证码: 匿名发表