ASP一个比较全面的数据库操作类

ASP 1427 0 2013-02-16

ASP一个比较全面的数据库操作类

'******************************
'版权所有:http://www.hilo8.com
'作者:天涯网魂 EN:JAES 创建时间:2009.07
'******************************
Class jaes_db
'******************************
'函数名称: dbconnect
'功能:连接打开数据库    返回值:Connection
'参数说明(5):db_path_name,db_server,db_uid,db_pwd,db_type
'(数据库名称/路径,数据库服务器IP,访问数据库用户名,访问数据库密码,数据库类型"1"为SQL2000数据库"0"为ACCESS数据库)
'作者:天涯网魂   创建时间:2009.07.15
'******************************
Public Function dbconnect(db_path_name,db_server,db_uid,db_pwd,db_type)
Dim ConnStr,conn
'db_type 系统数据库类型,"1"为MS SQL2000数据库,"0"为MS ACCESS 2000数据库
If db_type=0 Then
ConnStr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath(db_path_name) 'db_path_name 请使用相对于网站根目录的的绝对路径
Else
ConnStr="Driver={SQL Server};server=("&db_server&");uid="&db_uid&";pwd="&db_pwd&";database="&db_path_name&";"
End If
On Error Resume Next
Set conn = Server.CreateObject("ADODB.Connection")
conn.open ConnStr
If Err Then Err.Clear : Set conn = Nothing : Response.Write(errMsg(1)) : Response.End
set dbconnect=conn
End Function

'******************************
'函数名称: setRs
'功能:创建的记录集    返回值:recordset
'参数说明(2):exeSql,exeType 即(SQL语句或RS,更新方式“1”为Execute“2”为CreateObject其它为关闭对象RS)
'作者:天涯网魂   创建时间:2009.07.15
'******************************
Public Function setRs(exeSql,exeType)
if exeType=1 then
Set setRs=conn.Execute(exeSql)
elseif exeType=2 then
Set Call_Rs=Server.CreateObject("adodb.recordset")
Call_Rs.open exeSql,conn,3,3
Set setRs=Call_Rs
else
exeSql.Close
Set exeSql=Nothing
end if
End Function

'******************************
'函数名称: rows
'功能:记录条数    返回值:条数
'参数说明(2):tbName,sqlwhere 即(表名称,条件)
'作者:天涯网魂   创建时间:2009.07.15
'******************************
Function rows(tbName,sqlwhere)
   Dim SQl
   SQL="Select Count(*) From "&tname(tbName)&" "&sqlwhere
   rows=conn.Execute(SQL)(0)
   If IsNull(rows) Then rows=0
End Function

'******************************
'函数名称: InsertRow
'功能:插入数据   返回值:条数
'参数说明(4):tbName,arrFeild,arrValue,NOID 即(表名称,字段,变量,返回ID)
'作者:天涯网魂   创建时间:2009.07.15
'******************************
function InsertRow(tbName,arrFeild,arrValue,NOID)
dim myFeild,myValue
for i=Lbound(arrFeild) to Ubound(arrFeild)
myFeild=myFeild&arrFeild(i)&","
myValue=myValue&"'"&arrValue(i)&"',"
next
sql="insert into "&tname(tbName)&" ("&left(myFeild,(len(myFeild)-1))&") values("&left(myValue,(len(myValue)-1))&")"
conn.Execute(sql)
if(NOID=1)then
Set Rsid = conn.Execute("SELECT MAX(id) FROM "&tname(tbName))
InsertRow = Rsid(0)
else
InsertRow = true
end if
end function

'******************************
'函数名称: UpdateRow
'功能:更新数据   返回值:true
'参数说明(4):tbName,arrFeild,arrValue,tbwhere 即(表,字段,变量,条件)
'作者:天涯网魂   创建时间:2009.07.15
'******************************
function UpdateRow(tbName,arrFeild,arrValue,tbwhere)
dim mySql
for i=Lbound(arrFeild) to Ubound(arrFeild)
mySql=mySql&arrFeild(i)&"='"&arrValue(i)&"',"
next
sql="update "&tname(tbName)&" set "&left(mySql,(len(mySql)-1))&" where "&tbwhere
conn.Execute(sql)
UpdateRow = true
end function

'******************************
'函数名称: DeleteRow
'功能:删除数据   返回值:true
'参数说明(3):tbName,Feild,feildStr 即(表,字段,条件)
'作者:天涯网魂   创建时间:2009.07.15
'******************************
function DeleteRow(tbName,Feild,feildStr)
sql="delete from "&tname(tbName)&" where "&Feild&" in ("&feildStr&")"
conn.Execute(sql)
DeleteRow = true
end function

'******************************
'函数名称: ReadField
'功能:读取指定字段值   返回值:字段值
'参数说明(3):tbName,Feild,feildStr 即(表,字段,条件)
'作者:天涯网魂   创建时间:2009.07.15
'******************************
function ReadField(tbName,Feild,tbwhere)
dim mysql,Rs,Feilds,arrNum
if(isarray(Feild))then
arrNum=Ubound(Feild)
for each a in Feild
Feilds=Feilds&a&","
next
Feilds=left(Feilds,(len(Feilds)-1))
else
Feilds=Feild
arrNum=0
end if
if(isNumeric(tbwhere))then
mysql="select "&Feilds&" from "&tname(tbName)&" where id="&tbwhere
else
mysql="select "&Feilds&" from "&tname(tbName)&" where "&tbwhere
end if
Rs=setRs(mysql,1)
if(arrNum=0)then
ReadField=Rs(arrNum)
else
for i=0 to arrNum
ReadField=ReadField&Rs(i)&"$*$"
next
ReadField=split(ReadField,"$*$")
end if
end function

End Class
'end class jaes_db

注:
此代码纯属自编,可能有不到之处,所以代码仅供编程爱好者交流分享,请勿用于商业,谢谢! ^_^
Author: JAES

上一篇:ASP把汉字转化为拼音

下一篇:ASP常用正则表达式验证函数集

讨论数量:0

请先登录再发表讨论。 2024-04-28

天涯网魂
3 杠 5 星
TA 的文章
TA 的随言
TA 的资源链