常用数据库操作
'//=======================================================================START=
'// 程序名称 : DataBase.cls
'// 程序功能 : 网站基本信息的设定
'// 程序类型 : 顶层类模块
'// 调用方式 : 通过其他共通函数引用
'// 创建日期 : 2013-12-21 8:46:25
'// 作 者 :田辛
'// 修正履历 :
'//=============================================================================
Class clsDataBase
'# 私有模块变量声明
Dim c_strDataFile ' 网站名称
Dim c_objConn ' 数据库连接对象
'# 构造函数
Private Sub Class_Initialize()
Dim l_strDataFile ' 数据库Access2000文件的相对地址或者绝对地址
l_strDataFile = "db/Database1.mdb"
c_strDataFile = Server.MapPath(l_strDataFile)
Set c_objConn = Server.CreateObject("ADODB.Connection")
End Sub
'# 析构函数
Private Sub Class_Terminate()
On Error Resume Next
c_objConn.Close
On Error Goto 0
Set c_objConn = Nothing
End Sub
'# 属性构造开始
'# 方法构造开始
'====================================
' 方法名称 : OpenDB
' 处 理 : 打开数据库连接
' 参 数 : 无
' 返 回 值 : True -- 连接成功
' False -- 连接失败
' 创建日期 : 2013-12-21 9:24:38
' 修正履历 :
'====================================
Public Function OpenDB()
Dim l_strConnString ' 数据连接字符串
'1. 连接字符串构成
' 1-1. 驱动名称指定
l_strConnString = "Provider=Microsoft.Jet.OLEDB.4.0;"
' 1-2. 数据库文件设定
l_strConnString = l_strConnString & "Data Source=" & c_strDataFile
' 可能的数据库连接失败处理
On Error Resume Next
' 连接动作
c_objConn.Open l_strConnString
' 错误控制
If Err.Number <> 0 Then
Err.Clear
OpenDB = NG ' 连接失败返回False
Else
OpenDB = OK ' 连接成功返回True
End If
' 强制声明恢复错误处理
On Error Goto 0
End Function
'====================================
' 方法名称 : R
' 处 理 : 执行查询
' 参 数 : strSQL -- 查询SQL
' objRst -- 返回数据库连接对象
' 返 回 值 : True -- SQL执行成功
' False -- SQL执行失败
' 创建日期 : 2013-12-21 9:24:38
' 修正履历 :
'====================================
Public Function R(ByVal strSQL, ByRef objRst)
Dim l_intCnt ' 数据抽出件数
Set objRst = Server.CreateObject("ADODB.RecordSet")
' SQL执行差错处理
'On Error Resume Next
Debug.Log "Debug", "" , strSQL
' 实际执行SQL,强制输出记录集不可更改
objRst.Open strSQL, c_objConn, 1, 1
Debug.Log "SQL", "Execute By R" , strSQL
' 错误控制
If Err.Number <> 0 Then
Debug.Log "Error", "DataBase.R 执行失败[" & Err.Number & "|" & Err.Description & "]" , l_strSQL
Err.Clear
R = NG ' 连接失败返回False
Set objRst = Nothing
Else
'Debug.Log "Debug", "SQL执行正常终了" , objRst.RecordCount
R = objRst.RecordCount ' 连接成功返回取得的记录件数
End If
' 强制声明恢复错误数据
On Error Goto 0
End Function
Public Function CUD(ByVal strSQL)
Dim l_intCnt
On Error Resume Next
Debug.Log "SQL", "Execute By CUD" , strSQL
c_objConn.Execute strSQL, l_intCnt
If Err.Number = 0 Then
CUD = l_intCnt
Else
CUD = -1
Debug.Log "Error", "DataBase.CUD 执行失败[" & Err.Number & "|" & Err.Description & "]" , l_strSQL
End If
On Error Goto 0
End Function
Public Function YYYYMMDD()
Dim l_strDate
Dim l_strRst
l_strDate = Now()
l_strRst = CStr(Year(l_strDate)) & _
Right("00" & Month(l_strDate), 2) & _
Right("00" & Day(l_strDate), 2)
YYYYMMDD = l_strRst
End Function
Public Function HHMMSS()
Dim l_strDate
Dim l_strRst
l_strDate = Now()
l_strRst = Right("00" & Hour(l_strDate), 2) & _
Right("00" & Minute(l_strDate), 2) & _
Right("00" & Second(l_strDate), 2)
HHMMSS = l_strRst
End Function
End Class
'//=========================================================================END=