<!--METADATA
	TYPE="TypeLib"
	NAME="Microsoft ActiveX Data Objects 2.5 Library"
	UUID="{00000205-0000-0010-8000-00AA006D2EA4}"
	VERSION="2.5"
-->
<%
'	numOf = DB.RunQuery("SELECT * FROM table")
'	returnArray = DB.GetLastResults()

'-----------------------------------------------------
Class clsDatabase
'-----------------------------------------------------
	Private conn					' connection object
	Private rs							' recordset object
	Private LastID					'last returned id

	'---------------------------------------------------
	Public Function RunQuery(ByRef QueryString)
		Dim AffectedRows

		If InStrB(QueryString , "SELECT") > 0 AND InStrB(QueryString , "INSERT") = 0 AND InStrB(QueryString , "DELETE") = 0 Then
			If rs.State = adStateOpen then
				rs.Close
			End If

			rs.Open QueryString, conn, adOpenStatic, adLockOptimistic
			AffectedRows = rs.RecordCount
		Else
			Set rs = conn.Execute(QueryString , AffectedRows, adCmdText)
			
			If InStrB(QueryString , "INSERT") > 0 Then
				Set rs = conn.execute("SELECT @@Identity")
				LastID = rs(0).value
			End If						
		End If

		RunQuery = AffectedRows
	End Function
	'---------------------------------------------------


	'---------------------------------------------------
	Public Sub OpenRecord(ByRef dbTable, ByRef RecordId)
		rs.Open "SELECT * FROM " & dbTable & " WHERE id=" & RecordId, conn, adOpenKeyset, adLockOptimistic

		If RecordId = 0 Then	rs.AddNew
	End Sub

	Public Sub SetField(ByRef dbField, ByRef newValue)
		rs.Fields(dbField) = newValue
		If DEBUG_MODE Then Response.Write "'" & dbField & "' Saved<BR>"
	End Sub

	Public Sub CloseRecord()
		rs.Update

		LastID = rs("id")

		rs.Close()
	End Sub

	Public Property Get GetLastID()
		GetLastID = LastID
	End Property
	'---------------------------------------------------


	'---------------------------------------------------
	Public Function GetLastResults()
		If Not rs.EOF Then
			GetLastResults = rs.getRows()
		Else
			Call Err.Raise(vbObjectError + 1, "clsDatabase.asp", "The active recordset has no data to returned.")
		End If
	End Function
	'---------------------------------------------------


	'---------------------------------------------------
	Public Function GetField(FieldName)
		If Not rs.EOF Then
			GetField = rs(FieldName)
		Else
			Call Err.Raise(vbObjectError + 1, "clsDatabase.asp", "Field '" & FieldName & "' not found in the recordset collection.")
		End If
	End Function
	'---------------------------------------------------


	'---------------------------------------------------
	Public Sub OpenDatabase(ByRef dbName, ByRef dbUsername, ByRef dbPassword)
		Dim dbPath 			'path of the database

		dbPath = Server.Mappath("/")
		dbPath=Left(dbPath , InStrRev(dbPath , "\")) & "database\" & dbName
		
		conn.open "Data Source=" & dbPath & ";Provider=Microsoft.Jet.OleDB.4.0"
	End Sub
	'---------------------------------------------------


	'---------------------------------------------------
	Private Sub Class_Initialize()
		Set conn = server.createobject("ADODB.connection")
		Set rs = server.createobject("ADODB.Recordset")
	End Sub
	'---------------------------------------------------


	'---------------------------------------------------
	Private Sub Class_Terminate()
		If isObject(rs) then
			If rs.State = adStateOpen then
				rs.Close
			End If
			Set rs = Nothing
		End If
		If isObject(conn) then
			If conn.State = adStateOpen then
				conn.Close
			End If
			Set conn = Nothing
		End If
	End Sub
	'---------------------------------------------------


'-----------------------------------------------------
End Class
'-----------------------------------------------------
%>