• 老笔记整理一:asp


    学生时代 主要用的是asp 和 asp.net 笔记也写了不少,现在回头看看有不少不错的代码。现整理后贴出来。

    自用函数库: fun.asp

      

     1 Dim mConn,mRs
     2 mConn="Driver={Microsoft Access Driver (*.mdb)};DBQ=" & server.MapPath("BBS.mdb")
     3 
     4 public function OpenRs(mSQL)
     5  set OpenRs=server.CreateObject("ADODB.RecordSet")
     6   OpenRs.Open mSQL,mConn
     7 end function
     8 
     9 public sub GetRs(mSQL)
    10  set mRs=OpenRs(mSQL)
    11 end sub
    12 
    13 public sub closeRs()
    14  mRs.close
    15  set mRs=nothing
    16 end sub
    17 
    18 public sub ExcuteRs(mSQL)
    19  dim mCmd
    20  set mCmd=server.CreateObject("ADODB.Command")
    21   mCmd.activeconnection=mConn
    22   mCmd.commandtext=mSQL
    23   mCmd.execute
    24   mCmd.activeconnection.close
    25  Set mCmd=nothing
    26 end sub
    27 
    28 public function FindUser(mWhere)
    29  dim tr
    30  set tr=OpenRs("select * from " & mWhere)
    31  if tr.bof and tr.eof then
    32   FindUser=false
    33  else
    34   FindUser=true
    35  end if
    36 end function
    37 
    38 public function GetPara(Para)
    39  if request.ServerVariables("REQUEST_METHOD")="GET" then 
    40   GetPara=request.QueryString(Para)
    41  else
    42   GetPara=request.Form(Para)
    43  end if 
    44 end function

    第一步,我们先要定义两个变量mConn和mRs

    1 mConn="Driver={Microsoft Access Driver (*.mdb)};DBQ=" & server.MapPath("BBS.mdb")

    这里,mConn的作用是连接数据库。而 Driver={Microsoft Access Driver (*.mdb)};DBQ=    这句代码是通过ODBC链接数据库,可以在自定义连接字符串中复制粘贴。而server.MapPath里的BBS.mdb是你数据库的名字。

    第一个函数:

    1 public function OpenRs(mSQL)
    2  set OpenRs=server.CreateObject("ADODB.RecordSet")
    3   OpenRs.Open mSQL,mConn
    4 end function

    因为在后面的函数里会有重复使用到的地方,所以我们把公共部分提出来,写成函数。

    第二个函数:

    1 public sub GetRs(mSQL)
    2  set mRs=OpenRs(mSQL)
    3 end sub

    作用为读出数据库。所以只要直接让变量mRs=OpenRs就行了。()中的mSQL是参数的意思。你在调用函数时写入的参数电脑会执行。

    第三个函数:

    1 public sub closeRs()
    2  mRs.close
    3  set mRs=nothing
    4 end sub

    此函数的作用是关闭数据库,数据库只开不关,系统会崩溃的。

    第四个函数:

    1 public sub ExcuteRs(mSQL)
    2  dim mCmd
    3  set mCmd=server.CreateObject("ADODB.Command")
    4   mCmd.activeconnection=mConn
    5   mCmd.commandtext=mSQL
    6   mCmd.execute
    7   mCmd.activeconnection.close
    8  Set mCmd=nothing
    9 end sub

    此函数能读写数据库。包括select(查找)undate(更新)delete(删除)insert(写入)

    第五个函数:

    1 public function FindUser(mWhere)
    2  dim tr
    3  set tr=OpenRs("select * from " & mWhere)
    4  if tr.bof and tr.eof then
    5   FindUser=false
    6  else
    7   FindUser=true
    8  end if
    9 end function

    在上一篇登录篇中,在后台我们要做一件事。就是判断我们提交的用户名在数据库中是否存在。如果我们用do loop来循环,虽然也会有相同的效果,但效率会降低很多。因此我们写了这个函数 。我们只要判断第一条与最后一条是否同时满足条件。因为从第一条到最后一条都没有的话,那么此用户一定不存在。只要有一条记录有效,那么这个用户是已经存在的。

    第六个函数:

    1 public function GetPara(Para)
    2  if request.ServerVariables("REQUEST_METHOD")="GET" then 
    3   GetPara=request.QueryString(Para)
    4  else
    5   GetPara=request.Form(Para)
    6  end if 
    7 end function

    这是判断参数获得方式的函数。还在为post应该用form还是querystring而烦恼吗?那么有个好消息,你不用再去背了。

    request.ServerVariables("REQUEST_METHOD")是参数传递方式的意思。周三上兴趣小组的人应该明白传递方式是什么。传递参数的方式一共有二个。post对form,get对querystring。所以,我们只要作一个简单的判断就行了。当方式是

    get的时候,我们用qurtystring;当方式为post时,我们就用form。

    今天就是这么多,大家以后若是发现有在多个网页中重复打到的东西,你完全可以写成公共函数放在fun里。 

    这是09年的时候老师帮我写的函数库,事实证明这个节约了不少工夫与时间。这个是1.0版本,后来转asp.net了以后数据库连接这块就有更好的方式(有初步mvc的概念),这种代码的化归思想一直在我现在的工作项目中给予我莫大的帮助。

  • 相关阅读:
    sql 相关子查询
    sql 执行计划
    SQL表连接查询(inner join、full join、left join、right join)
    sql执行顺序
    sql 语句 嵌套子查询 执行顺序分析
    只有程序员才看得懂的情书
    Give Me an E
    hdu 1114 (背包变形)
    模版 并查集
    背包 讲解
  • 原文地址:https://www.cnblogs.com/shining77/p/7134073.html
Copyright © 2020-2023  润新知