⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 db.inc

📁 物业管理和办公自动化系统
💻 INC
📖 第 1 页 / 共 2 页
字号:
		if m_Recordset is nothing then
			GetValue = ""
		elseif (not m_Recordset.EOF) and (sFieldName <> "") then
			res = m_Recordset(sFieldName)
			if isnull(res) then 
				res = ""
			end if
			if VarType(res) = vbBoolean then
				if res then res = "1" else res = "0"
			end if
			GetValue = res
		else
			GetValue = ""
		end if

		'' 出错信息,如果出错,则显示出错信息,并不继续往下作了
		dim sError	: sError = ProcessError
		if sError <> "" then 
				'Response.Clear
				Response.Write("调用GetValue函数出错,参考信息如下:<br>" & vbLF & _
						"SQL语句:<span style=""color:blue;font-size:9pt"">" & m_sql & "</span><br>" & _
						"出错信息:<span style=""color:red;font-size:9pt"">" & sError & "</span><br>" & _
						"解决办法:<span style=""color:blue;font-size:9pt"">请仔细检查字段名是否正确,是否与查询语句中的一致!</span><br>")
				Response.end
		end if
		on error goto 0
	End Function
	
	'************************************************************************************************
	' 函数名 : GetValueHTML
	' 输 入 : (字段名)
	' 输 出 : GetValueHTML函数名作为返回值,类型为字符串
	' 功能描述: 从Recordset的当前行中获取相应字段的值,以HTML编码形式返回
	' 调用模块: 
	' 作 者 : 周秋舫
	' 日 期 : 2002-05-09
	' 版 本 : 
	'************************************************************************************************
	Public Function GetValueHTML(sFieldName)
		'on error resume next
		GetValueHTML = ToHTML(GetValue(sFieldName))
		'on error goto 0
	End Function

	'************************************************************************************************
	' 函数名 : ProcessError
	' 输 入 : (字段名)
	' 输 出 : ProcessError函数名作为返回值,类型为字符串
	' 功能描述: 出错处理,如果没有出错,则返回空字串,如果出错,则返回出错信息
	' 调用模块: 
	' 作 者 : 周秋舫
	' 日 期 : 2002-05-09
	' 版 本 : 
	'************************************************************************************************
	Public Function ProcessError()
		if m_CDBConn.m_DBConn.Errors.Count > 0 then
			ProcessError = m_CDBConn.m_DBConn.Errors(0).Description & " (" & m_CDBConn.m_DBConn.Errors(0).Source & ")"
		elseif not (Err.Description = "") then
			ProcessError = Err.Description
		else
			ProcessError = ""
		end if
	End Function

End Class

'================================================================================================
' 以下为跟数据库有关的其它函数
'================================================================================================

'************************************************************************************************
' 函数名 : ExecuteSQL
' 输 入 : db  ----- 指明连接到哪个数据库,整数类型
'       sql  ---- 要执行的SQL语句,字符串类型
' 输 出 : 成功返回空,错误返回错误信息
' 功能描述: 执行SQL语句,完成SQL语句所要的操作
' 调用模块: 
' 作 者 : 周秋舫
' 日 期 : 2002-05-09
' 版 本 : 
'************************************************************************************************
Function ExecuteSQL(db, sql)
'		on error resume next
'		response.write sql : response.end

		Dim oCn		: Set oCn = New CDBConnection
		oCn.Connect(db)
		oCn.m_DBConn.Execute(sql)

		'' 出错信息,如果出错,则显示出错信息,并不继续往下作了
		dim sError	: sError = oCn.ProcessError
		if sError <> "" then 
				Response.Write("调用ExecuteSQL函数出错,参考信息如下:<br>" & vbLF & _
						"SQL语句:<span style=""color:blue;font-size:9pt"">" & sql & "</span><br>" & _
						"出错信息:<span style=""color:red;font-size:9pt"">" & sError & "</span><br>" & _
						"解决办法:<span style=""color:blue;font-size:9pt"">请仔细检查SQL语句,可以在SQL查询分析器中测试一下其正确性!</span><br>")
				Response.end
		end if

		oCn.Disconnect()

		on error goto 0
End Function

'************************************************************************************************
' 函数名 : ExecuteSP
' 输 入 : db  ----- 指明连接到哪个数据库,整数类型
'       sql  ---- 要执行的Stored Procedure,字符串类型
' 输 出 : ExecuteSP函数名作为返回值,即存储过程执行结果,类型为整数
' 功能描述: 执行Stored Procedure,完成相应的功能
' 调用模块: 
' 作 者 : 周秋舫
' 日 期 : 2002-05-09
' 版 本 : 
'************************************************************************************************
Function ExecuteSP(db, sql)
		on error resume next

		dim oCn, rs, iRtn
		Set oCn = New CDBConnection
		oCn.Connect(db)

		set rs = oCn.m_DBConn.Execute(sql)
		iRtn = rs("rtn_code")

		'' 出错信息,如果出错,则显示出错信息,并不继续往下作了
		dim sError	: sError = oCn.ProcessError
		if sError <> "" then 
				'Response.Clear
				Response.Write("调用ExecuteSP函数出错,参考信息如下:<br>" & vbLF & _
						"SQL语句:<span style=""color:blue;font-size:9pt"">" & sql & "</span><br>" & _
						"出错信息:<span style=""color:red;font-size:9pt"">" & sError & "</span><br>" & _
						"解决办法:<span style=""color:blue;font-size:9pt"">请仔细检查SQL语句,可以在SQL查询分析器中测试一下其正确性(确定存储过程返回rtn_code字段)!</span><br>")
				Response.end
		end if

		oCn.Disconnect()
		
		ExecuteSP = iRtn

		on error goto 0
End Function

'************************************************************************************************
' 函数名 : DLookUp
' 输 入 : db      ---- 指明连接到哪个数据库
'       Table   ---- 表名,类型为字符串
'       Field   ---- 字段名,类型为字符串
'       sWhere  ---- 条件限定语句
' 输 出 : DLookUp函数名作为返回值,类型为字符串
' 功能描述: 根据限定条件从相应表中选取相应字段值
' 调用模块: 
' 作 者 : 周秋舫
' 日 期 : 2002-05-09
' 版 本 : 
'************************************************************************************************
Function DLookUp(db, Table, Field, sWhere)
		on error resume next

		Dim Res, sSQL
		if sWhere <> "" then sWhere = " where " & sWhere
		sSQL = "select " & Field & " as field1 from " & Table & sWhere
		
		dim crs	:	set crs = New CRecordset
		dim rs	:	set rs = crs.Open(db, sSQL)
		Res = crs.GetValue("field1")
		crs.Close()

		if IsNull(Res) then Res = ""
		DLookUp = Res


		'' 出错信息,如果出错,则显示出错信息,并不继续往下作了
		dim sError	: sError = oCn.ProcessError
		if sError <> "" then 
				'Response.Clear
				Response.Write("调用DLookUp函数出错,参考信息如下:<br>" & vbLF & _
						"SQL语句:<span style=""color:blue;font-size:9pt"">" & "select " & Field & " from " & Table & sWhere & "</span><br>" & _
						"出错信息:<span style=""color:red;font-size:9pt"">" & sError & "</span><br>" & _
						"解决办法:<span style=""color:blue;font-size:9pt"">请仔细检查SQL语句,可以在SQL查询分析器中测试一下其正确性!</span><br>")
				Response.end
		end if

		on error goto 0
End Function

'************************************************************************************************
' 函数名 : SelectOptions
' 输 入 : db            ---- 指名连接到哪个数据库
'       table	         ---- 表名,类型为字符串
'       ValueField    ---- 字段名,类型为字符串
'       DisplayField  ---- 字段名,类型为字符串
'       DefaultValue  ---- 缺省选中的值
'       sWhere        ---- 条件限定语句
' 输 出 : SelectOptions函数名作为返回值,类型为字符串"<option value='id值'>desp值</option>...."
' 功能描述: 根据限定条件从相应表中选取相应字段值
' 调用模块: 
' 作 者 : 周秋舫
' 日 期 : 2002-05-09
' 版 本 : 
'************************************************************************************************
Function SelectOptions(db, table, ValueField, DisplayField, DefaultValue, sWhere)
	on error resume next

	' 定义临时存放函数返回值的内容的变量,并赋初值
	Dim Res : Res = ""

	' 构造SQL语句
	Dim sSQL
	if Trim(sWhere) = "" then	' 没有查询限制条件
		sSQL = "select " & ValueField & " as f1, " & DisplayField & " as f2 from " & table
	else
		sSQL = "select " & ValueField & " as f1, " & DisplayField & " as f2 from " & table & " where " & sWhere
	end if

	' 获取数据库记录集
	dim oRs, rs
	Set oRs = New CRecordset
	Set rs = oRs.Open(dbLocal, sSQL)

	' 循环取数据,放入<option>对
  	Dim m_id, m_desp, m_default
	m_default = DefaultValue

	while not rs.EOF 
		m_id   = oRs.GetValue("f1")
		m_desp = oRs.GetValue("f2")     

		' 对取出的每一条记录的值与缺省值比较,相同则选中
		if UCase(CStr(m_id)) = UCase(CStr(m_default)) then
			Res = Res & vbTab & "<option value=""" & m_id & """ selected>" & m_desp & "</option>" & VBLF
		else
			Res = Res & vbTab & "<option value=""" & m_id & """>" & m_desp & "</option>" & VBLF
		end if
		rs.MoveNext
	wend

	''if Res = "" then Res = "<option value=""-1"">(无记录)</option>" & VBLF
	SelectOptions = Res

	' 断开数据库
	oRs.Close()
	on error goto 0
end function
%>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -