ASP操作数据库的函数库

 
<%

 
'*======================================
 '* 名称:useDb.asp
 '* 功能:数据库操作函数库
 '* 作者:intereye
 '* 信箱:inteye@163.com
 '* 主页:http://www.inteye.net
 '* BLOG:http://blog.csdn.net/intereye
 '*======================================

 
'* 函数:openDb(dbType,dbUser,dbPass,dbName,dbServer,dbPath)
 '* 功能:打开数据库连接
 '* 参数:dbType->数据库类型 MDB ACCESS数据库 || SQLSERVER SQLSERVER数据库
 '* 参数:dbUser->访问数据库用户名
 '* 参数:dbPass->访问数据库密码
 '* 参数:dbName->数据库名称
 '* 参数:dbServer->数据库Host
 '* 参数:dbPath->数据库路径
 
 
Function openDb(dbType,dbUser,dbPass,dbName,dbServer,dbPath)
  
Dim Conn
  
Set Conn = Server.CreateObject("ADODB.Connection")
  
Select case dbType
   
case "MDB":
    connStr 
= "driver={Microsoft Access Driver (*.mdb)};dbq=" & Server.MapPath(""&dbPath&dbName&"")
   
case "SQLSERVER":
    connStr 
= "Provider=SQLOLEDB.1;Password="&dbPass&";Persist Security Info=True;User ID="&dbUser&";Initial Catalog="&dbName&";Data Source="&dbServer&""
  
End Select
  Conn.Open connStr
 
End Function
 
 
'* 函数:add(tabname,fieldlist,dblist)
 '* 功能:在数据库中插入一条记录
 '* 参数:tabname->数据表名
 '* 参数:dblist->数据表字段名数组
 '* 参数:fieldlist->表单变量名数组
 '* 返回:0 false || 1 true
 
 
Function add(tabname,dblist,fieldlist)
  Sql 
= "Insert INTO "&tabname&"("
  Value 
= ""
  Field 
= ""
  
For Each v in dblist
   Field 
= Field & v & ","
  
Next 
  Field 
= Left(Field,Len(Field)-1)
  Value 
= Field & ") VALUES("
  
For Each v in fieldlist
   
If Request.Form(v) <> "" Then
    Value 
= Value & "'" & Request.Form(v) & "',"
   
Else
    Value 
= Value & "'" & v & "',"
   
End If
  
Next
  Value 
= Left(Value,Len(Value)-1)
  Sql 
= Sql & Value & ")"
  Conn.Execute(Sql)
  CloseDb()
  
If Err Then
   add 
= 0
  
Else
   add 
= 1
  
End If
 
End Function
 
 
'* 函数:update(tabname,dblist,fieldlist,id)
 '* 功能:更新数据库中指定的一条记录
 '* 参数:tabname->数据表名
 '* 参数:dblist->数据库字段名称数组
 '* 参数:fieldlist->表单变量名数组
 '* 参数:id->数据ID号
 '* 返回:0 false || 1 true
 
 
Function update(tabname,dblist,fieldlist,id)
  Sql 
= "Update " & tabname & " Set "
  Value 
= ""
  
For i=0 to ubound(dblist)
   Value 
= Value & dblist(i) & "='"
   
If Request.Form(fieldlist(i)) <> "" Then
    Value 
= Value & Request.Form(fieldlist(i)) & "',"
   
Else
    Value 
= Value & fieldlist(i) & "',"
   
End If
  
Next
  Value 
= Left(Value,Len(Value)-1)
  Sql 
= Sql & Value & " Where id=" & id
  Conn.Execute(Sql)
  CloseDb()
  
If Err Then
   update 
= 0
  
Else
   update 
= 1
  
End If  
 
End Function
 
 
'* 函数:del(tabname,id)
 '* 功能:从数据库中删除一条指定记录
 '* 参数:tabname->数据表名称
 '* 参数:id->数据ID号
 '* 返回:0 false || 1 true
 
 
Function del(tabname,id)
  Sql 
= "Delete FROM " & tabname & " Where id in(" & id & ")"
  Conn.Execute(Sql)
  CloseDb()
  
If Err Then
   del 
= 0
  
Else
   del 
= 1
  
End If
 
End Function
 
 
'* 函数:getRow(tabname,fieldlist,caseStr)
 '* 功能:从数据库中取得一行
 '* 参数:tabname->数据表名
 '* 参数:fieldlist->数据字段数组
 '* 参数:caseStr->Sql条件语句
 
 
Function getRow(tabname,fieldlist,caseStr)
  
If Not isArray(fieldlist) Then
   fieldlist 
= "*"
  
Else
   Field 
= ""
   
For Each val in fieldlist
    Field 
= Field & val & ","
   
Next
   fieldlist 
= Left(Field,Len(Field)-1)
  
End If
  Sql 
= "Select " & fieldlist & " FROM " & tabname & caseStr
  
Set Rs = Conn.Execute(Sql)
  
If Rs.Eof AND Rs.Bof Then
   getRow 
= 0
  
Else
   getRow 
= 1
  
End If
 
End Function
 
 
'* 函数:CloseDb()
 '* 功能:关闭数据库连接并释放对象

 
Function CloseDb()
  Conn.Close
  
Set Conn = Nothing
 
End Function
%>
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值