虚位以待(AD)
虚位以待(AD)
首页 > 网络编程 > ASP编程 > CJJ专用ASP类库中的某个class

CJJ专用ASP类库中的某个class
类别:ASP编程   作者:码皇   来源:互联网   点击:

作为程序员,相信每个人都有自己的函数库及类库。在做项目时,从库里面提取想要的函数及类。这样可以提高开发效率。CJJ专用ASP类库中的某个class复制代码 代码如下: ----******************** TConnString ******* ,魔客吧
作为程序员,相信每个人都有自己的函数库及类库。在做项目时,从库里面提取想要的函数及类。这样可以提高开发效率。CJJ专用ASP类库中的某个class
复制代码 代码如下:
'----******************** TConnString *****************************----
'数据库连接字符串结构体
Class TConnString
Public DBName,DBPath,DBServer,DBUser,DBPass,DBType
End Class
'----******************** TConnString *****************************----

'----********************* TDBOperate *****************************----
'通用数据库操作类
Class TDBOperate
Private cls_oConn,cls_oRS '类私有Connection对象、RecordSet对象
Private cls_sErrInfo,cls_sConn,cls_sSQL,cls_sURL,cls_sFormAction
Private cls_iPageSize '分页数
Private cls_lTotalPage,cls_lTotalRecord,cls_lPageNo

'类初始化
Private Sub Class_Initialize()
End Sub

'*****************************************
' 类型: 属性
' 目的: 根据获取的Connection String,创建数据库连接
' 输入: a_sConn:数据类型字符串
' 返回: 无
'*****************************************
Public Property Let SetConn(a_sConn)
Dim sObjType


sObjType = LCase(TypeName(a_sConn))
If sObjType <> "string" Then
cls_sErrInfo = cls_sErrInfo & "
  • SetConn:非法的字符串参数
  • " & Chr(10)
    Exit Property
    End If

    Set cls_oConn = CreateObject("Adodb.Connection")
    On Error Resume Next
    cls_oConn.Open a_sConn
    If Err Then
    Err.Clear
    Set cls_oConn = Nothing
    On error goto 0
    cls_sErrInfo = cls_sErrInfo & "
  • 数据库连接出错
  • " & Chr(10)
    End If
    On Error Goto 0
    End Property

    '*****************************************
    ' 类型: 属性
    ' 目的: 根据获取的Connection对象,创建数据库连接
    ' 输入: a_oConn:数据类型字符串
    ' 返回: 无
    '*****************************************
    Public Property Set SetConn(a_oConn)
    Dim sObjType,sConn
    Dim oConnStr

    sObjType = LCase(TypeName(a_oConn))

    Select Case sObjType
    Case "connection"
    '设置Connection对象
    Set cls_oConn = a_oConn
    Case "tconnstring"
    sConn = ""
    Set oConnStr = a_oConn
    Select Case (oConnStr.DBType)
    Case gbl_iDB_Access
    sConn = "Provider = micorsoft.jet.oledb.4.0; User ID = " & oConnStr.DBUser & "; Password = " & Replace(oConnStr.DBPass, Chr(0), "") & ";Initial Catalog = " & oConnStr.DBName & "; Data Source = " & SqlLocalName & ";"
    Case gbl_iDB_MsSQL
    sConn = "Provider = Sqloledb; User ID = " & oConnStr.DBUser & "; Password = " & Replace(oConnStr.DBPass, Chr(0), "") & ";Initial Catalog = " & oConnStr.DBName & "; Data Source = " & oConnStr.DBServer & ";"
    End Select

    If sConn = "" Then
    cls_sErrInfo = cls_sErrInfo & "
  • 数据库连接对象出错,无法创建Connection对象
  • " & Chr(10)
    Exit Property
    End If

    '设置Connection连接串值,供ConnStr属性返回
    cls_sConn = sConn

    Set cls_oConn = CreateObject("Adodb.Connection")
    On Error Resume Next
    cls_oConn.Open sConn
    If Err Then
    Err.Clear
    Set cls_oConn = Nothing
    cls_sErrInfo = cls_sErrInfo & "
  • 数据库连接出错
  • " & Chr(10)
    End If
    On Error Goto 0
    Case Else
    cls_sErrInfo = cls_sErrInfo & "
  • SetConn:非法的对象参数
  • " & Chr(10)
    Exit Property
    End Select
    End Property

    '*****************************************
    ' 类型: 属性
    ' 目的: 设置RecordSet对象
    ' 输入: a_sSQL: SQL语句。
    ' 返回: 无。
    '*****************************************
    Public Property Let SetRS(a_sSQL)
    If LCase(TypeName(cls_oConn)) <> "connection" Then
    cls_sErrInfo = cls_sErrInfo & "
  • 非法的Connection对象,无法创建RecordSet对象
  • " & Chr(10)
    Exit Property
    End If

    cls_sSQL = a_sSQL

    '创建RecordSet对象
    Set cls_oRS = CreateObject("Adodb.RecordSet")


    ' On Error Resume Next
    cls_oRS.Open cls_sSQL,cls_oConn,1,1
    ' On Error Goto 0
    End Property

    '*****************************************
    ' 类型: 属性
    ' 目的: 设置RecordSet对象
    ' 输入: a_oRS: RecordSet对象
    ' 返回: 无。
    '*****************************************
    Public Property Set SetRS(a_oRS)
    If LCase(TypeName(a_oRS))<>"recordset" Then
    cls_sErrInfo = cls_sErrInfo & "
  • 非法的RecordSet对象
  • " & Chr(10)
    Exit Property
    End If

    '设置RecordSet对象
    Set cls_oRS = a_oRS
    End Property

    '*****************************************
    ' 类型: 属性
    ' 目的: 设置RecordSet对象
    ' 输入: a_oRS: RecordSet对象
    ' 返回: 返回一RecordSet对象
    '*****************************************
    Public Property Get GetRS()
    Set GetRS = cls_oRS
    End Property

    '获取Connection对象
    Public Property Get GetConn()
    If cls_sErrInfo <> "" Then
    Call ShowError()
    End If

    If LCase(TypeName(cls_oConn))<>"connection" Then
    cls_sErrInfo = cls_sErrInfo & "
  • Connection对象获取失败
  • "
    ' Exit Property
    End If

    Set GetConn = cls_oConn
    End Property

    '返回数据库连接字符串
    Public Property Get ConnStr
    ConnStr = cls_sConn
    End Property

    '设置第个页面显示的数据数
    Public Property Let PageSize(a_iPageSize)
    If Not IsNumeric(a_iPageSize) Then
    cls_sErrInfo = cls_sErrInfo & "
  • 无效的分页记录数参数
  • " & Chr(10)
    Exit Property
    End If

    cls_iPageSize = a_iPageSize
    End Property

    '设置SQL语句,用于建立RecordSet对象
    Public Property Let SQL(a_sSQL)
    If IsNone(a_sSQL) Then
    cls_sErrInfo = cls_sErrInfo & "
  • 没有设置SQL,无法创建RecordSet对象
  • " & Chr(10)
    Exit Property
    End If

    cls_sSQL = Trim(a_sSQL)
    End Property

    '执行数据操作
    Public Sub Execute()
    If cls_sErrInfo <> "" Then
    ShowError("
      " & Chr(10) & cls_sErrInfo & "
    " & Chr(10))
    Exit Sub
    End If

    If LCase(TypeName(cls_oConn))="connection" Then
    If IsNumeric(cls_iPageSize) Then
    Set cls_oRS = CreateObject("Adodb.RecordSet")
    cls_oRS.Open cls_sSQL,cls_oConn,1,1
    Else
    End If
    Else
    cls_sErrInfo = cls_sErrInfo & "
  • 非法的Connection对象
  • " & Chr(10)
    End If
    End Sub

    '*****************************************
    ' 类型: 属性
    ' 目的: 设定或显示URL。
    ' 输入: a_sURL: 需要分页的文件地址。
    ' 返回: 无
    '*****************************************
    Public Property Let URL(ByVal a_sURL)
    cls_sURL = a_sURL
    End Property

    '*****************************************
    ' 类型: 过程
    ' 目的: 统计总记录数、计算总页数
    ' 输入: 无
    ' 返回: 无
    '*****************************************
    Private Sub Pagination(ByVal a_sStr)
    Dim iPosition,cls_sErrInfo,i,oRS_Temp,lTotalRecord

    If cls_sErrInfo <> "" Then
    Call ShowErrors()
    Exit Sub
    End If

    If cls_oRS.Eof And cls_oRS.Bof Then
    cls_sErrInfo = cls_sErrInfo & "
  • 库中无任何记录
  • "
    End If

    '计算总计录数
    Select Case LCase(TypeName(a_sStr))
    Case "string"
    Set oRS_Temp = cls_oConn.Execute(a_sStr)
    lTotalRecord = CLng(oRS_Temp(0).Value)
    Case "integer"
    Select Case (Int(Trim(a_sStr)))
    Case gbl_iPagination_UseRcdCount '使的RecordCount方法进行分页
    lTotalRecord = cls_oRS.RecordCount
    Case gbl_iPagination_UsePgCount '使用PageCount方法进行分页
    lTotalRecord = cls_oRS.PageCount * cls_iPageSize
    End Select
    End Select

    cls_lTotalRecord = lTotalRecord
    If (cls_lTotalRecord<=2147483647 AND cls_lTotalRecord>=-2147483648) Then
    cls_lTotalRecord = CLng(cls_lTotalRecord)
    Else
    cls_lTotalRecord = 2147483647
    End If

    If cls_lTotalRecord <0 Then
    cls_lTotalRecord = 0
    End If

    '计算总页数
    If cls_lTotalRecord Mod cls_iPageSize = 0 Then
    cls_lTotalPage = CLng(cls_lTotalRecord cls_iPageSize * -1)*-1
    Else
    cls_lTotalPage = CLng(cls_lTotalRecord cls_iPageSize * -1)*-1 + 1
    End If

    '获取当前页参数
    cls_lPageNo = Trim(Request.QueryString("Page"))
    If cls_lPageNo = "" Then
    cls_lPageNo = Trim(Request.Form("Page"))
    If cls_lPageNo = "" Then
    cls_lPageNo = 1
    End If
    End If

    '如果没有选择第几页,则默认显示第一页
    If cls_lPageNo <> "" And IsNumeric(cls_lPageNo) Then
    If (cls_lPageNo <= 2147483647 And cls_lPageNo>=-2147483648) Then
    cls_lPageNo = CLng(cls_lPageNo)
    Else
    cls_lPageNo = 2147483647
    End If
    If (cls_lPageNo<=0) Then
    cls_lPageNo = 1
    End If
    Else '当前页参数为空或者非数字,默认将转到第1页
    cls_lPageNo=1
    End If

    If (cls_lPageNo > cls_lTotalPage AND cls_lTotalPage<>0) Then
    cls_lPageNo = cls_lTotalPage
    End If

    cls_oRS.PageSize = cls_iPageSize
    cls_oRS.AbsolutePage = cls_lPageNo

    iPosition = InstrRev(cls_sURL,"?")
    cls_sFormAction = cls_sURL
    If iPosition > 0 Then
    cls_sURL = cls_sURL & "&Page="
    Else
    cls_sURL = cls_sURL & "?Page="
    End If
    End Sub

    '*****************************************
    ' 类型: 过程
    ' 目的: 显示分页信息
    ' 输入: 无
    ' 返回: 无
    '*****************************************
    Public Sub Pages(ByVal a_sStr)
    Dim strPages,k,intTemp,intTemp1
    Dim sResult

    If Not IsNone(cls_sErrInfo) Then
    Call ShowErrors()
    End If

    '计算总页数及总记录数
    Call Pagination(a_sStr)

    If cls_lTotalPage = 1 Then Exit Sub
    sResult = sResult & "" & Chr(10)
    sResult = sResult & " " & Chr(10) & " " & Chr(10) & " " & Chr(10) & "
    " & Chr(10)
    sResult = sResult & " " & Chr(10)
    sResult = sResult & " " & Chr(10) & " " & Chr(10)
    sResult = sResult & " " & Chr(10)
    sResult = sResult & " " & Chr(10)
    End If
    sResult = sResult & "
    " & Chr(10)

    If cls_lTotalPage >= 1 Then

    If cls_lPageNo <= 1 Then
    sResult = sResult & "首页 前页 后页 末页" & Chr(10)
    Else
    If cls_lPageNo >= cls_lTotalPage Then
    sResult = sResult & "首页 前页 " & "后页 末页" & Chr(10)
    Else
    sResult = sResult & "首页 前页 " & "后页 末页" & Chr(10)
    End If
    End If
    sResult = sResult & " 页次:" & cls_lPageNo & "/" & cls_lTotalPage & "页 共" & cls_lTotalRecord & "条记录 " & cls_iPageSize & "条/页
    第"
    sResult = sResult & " 页 " & Chr(10)
    sResult = sResult & "
    " & Chr(10) & "
    " & Chr(10)

    '输出分页信息
    Response.Write("result:" & sResult)
    End Sub

    '类销毁
    Private Sub Class_Terminate()
    If LCase(TypeName(cls_oConn))<>"nothing" Then
    cls_oConn.Close
    Set cls_oConn = Nothing
    End If

    If LCase(TypeName(cls_oRS))<>"nothing" Then
    ' cls_oRS.Close
    Set cls_oRS = Nothing
    End If
    End Sub


    '*****************************************
    ' 类型: 过程
    ' 目的: 显示分页类中出现的错误信息
    ' 输入: 无
    ' 返回: 无
    '*****************************************
    Private Sub ShowErrors()
    If cls_cls_sErrInfo <> "" Then
    cls_cls_sErrInfo = "
      " & Chr(10) & cls_sErrInfo & "
    " & Chr(10)
    Response.Write(cls_cls_sErrInfo)
    Response.End
    End If
    End Sub
    End Class
    '----********************* TDBOperate *****************************----


    稍提一个编码风格

    个人觉得代码混排是个鸡肋,混排的可读性差,所以我一般都只是少量混排,尽量将代码和HTML分离。
    复制代码 代码如下:


    <%
    '*****************************************
    '类型:函数
    '目的:报错
    '参数:
    'a_num:报错信息参数
    '*****************************************
    Private Function ShowError(a_Num)
    Dim sErrInfo

    sErrInfo = ""
    Response.Write("

    Error Number:era_" & a_Num & "

    ")
    Select Case a_Num
    Case "1000"
    sErrInfo = "参数类型不正确,请检查"
    Case "1100"
    sErrInfo = "无法打开数据库连接"
    Case Else
    sErrInfo = "发现未知错误,请与管理员联系"
    End Select
    sErrInfo = "

    Error Description:" & sErrInfo & "

    "
    Response.Write(sErrInfo)
    Response.End
    End Function

    Dim oRS,sHtml

    Call OpenDB()
    Set oRS = oConn.OpenSchema(20)
    sHtml=""
    oRS.MoveFirst

    '循环读取数据库中的表名
    Do While Not oRS.EOF
    If UCase(oRS(3))="TABLE" Then
    sTemp = Trim(oRS(2))
    If sTBName = sTemp Then
    sHtml= sHtml & Space(2) & "" & Chr(10)
    Else
    sHtml= sHtml & Space(2) & "" & Chr(10)
    End If
    End If
    oRS.MoveNext
    Loop
    Call CloseDB()
    %>




    数据库名




     


    数据库名: 数据库用户名:数据库密码: 数据库服务器路径:


    数据表名:

    表字段个数:

















    字段名字段类型使用只读表单项类型表单项名称表单项描述表单项验证表单项默认值

    需要生成的动态ASP网页类型: 文件名:
    文件类型:






    魔客吧温馨提示:如果你正在寻找dedecms模板,那你可以到魔客吧的 dedecms模板 频道看看,相信一定能找到你喜欢的!

    分享到 更多 <script type="text/javascript" id="bdshell_js"></script><script type="text/javascript">document.getElementById("bdshell_js").src = "http://share.baidu.com/static/js/shell_v2.js?cdnversion=" + new Date().getHours();</script> 本文地址:http://www.moke8.com/article-19774-1.html
    文章标题:CJJ专用ASP类库中的某个class 收藏邀请 最新分享资源 响应式建筑建材水泥网站dede模板

    响应式建筑建材水泥网站dede模板

    dedecms模板 by moke 响应式货运物流网站dedecms模板

    响应式货运物流网站dedecms模板

    dedecms模板 by moke 生态农业酷站HTML模版

    生态农业酷站HTML模版

    div+css模板 by hexipeng 智能家居网站+手机端织梦模板

    智能家居网站+手机端织梦模板

    dedecms模板 by moke

    最新评论

    相关分类

    • PHP编程
    • ASP编程
    • NET编程
    • JSP编程
    • MSSQL教程
    • MYSQL教程

    精品推荐

    中英双语响应式电子企业织梦模板

    精华 中英双语响应式电子企业织梦模板

    dedecms模板 by moke

    极品资源

    高端建筑装饰带手机版十配色织梦模板

    极品 高端建筑装饰带手机版十配色织梦模板

    dedecms模板 by moke

    原创模板

    多配色创意metro风格企业

    魔币 多配色创意metro风格企业

    下载排行

    • 01响应式网站网络设计公司织梦
    • 02响应式货运物流网站dedecms模
    • 03智能家居网站+手机端织梦模板
    • 04响应式建筑建材水泥网站dede
    • 05生态农业酷站HTML模版

    资源分类

    企业网站模板 企业网站源码 个人网站模板 个人网页模板 手机wap网站 门户网站模板 商业源码 淘宝客程序 html5网站 网站后台模板 html网页模板 学校网站模板 <script type="text/javascript">var cookieLogin = Ajax("TEXT");cookieLogin.get("connect.php?mod=check&op=cookie", function() {});</script><script type="text/javascript">_attachEvent(window, 'load', getForbiddenFormula, document);function getForbiddenFormula() {var toGetForbiddenFormulaFIds = function () {ajaxget('plugin.php?id=cloudsearch&formhash=d04e22bb');};var a = document.body.getElementsByTagName('a');for(var i = 0;i < a.length;i++){if(a[i].getAttribute('sc')) {a[i].setAttribute('mid', hash(a[i].href));a[i].onmousedown = function() {toGetForbiddenFormulaFIds();};}}var btn = document.body.getElementsByTagName('button');for(var i = 0;i < btn.length;i++){if(btn[i].getAttribute('sc')) {btn[i].setAttribute('mid', hash(btn[i].id));btn[i].onmousedown = function() {toGetForbiddenFormulaFIds();};}}}</script>

    联系我们 | 关于我们 | 招商加盟 | 版权声明 | 帮助中心 | 广告服务 | 网站地图

    欢迎浏览魔客吧提供的 CJJ专用ASP类库中的某个class 信息,若本站中的信息侵犯了您的权益,请与本站管理员联系

    Copyright @ 2010-2015 魔客吧 版权所有 蜀ICP备09014119号 川公网安备51050202000165号  <script type="text/javascript" src="http://tcss.qq.com/ping.js?v=1VERHASH" charset="utf-8"></script><script type="text/javascript" reload="1">pgvMain({"discuzParams":{"r2":"5238379","ui":0,"rt":"portal","pn":1,"qq":"000"},"extraParams":""});</script>

    积分 0, 距离下一级还需 积分 <script type="text/javascript">_attachEvent(window, 'scroll', function(){showTopLink();});</script><script>(function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https'){ bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else{ bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s);})();</script> <script type="text/javascript"> var tipsinfo = '5238379|X2.5|0.6||0||0|7|1505358019|977a12b9c816b754c317a7ea3e247159|2'; </script> <script src="http://discuz.gtimg.cn/cloud/scripts/discuz_tips.js?v=1" type="text/javascript" charset="UTF-8"></script>
    相关热词搜索: CJJ专用ASP类库中的某个class