ASP数据库操作常用函数集,经典的东西收藏备用。

代码来源于Mir ZhouYang。

dbinit()                        连接数据库  

opendb(asqlstr,rs_temp)         打开记录集的函数  

selectdb(awherestr,dbname,rs_temp) 打开表的函数   

deletedb(awherestr,dbname)      数据库删除记录的函数  

updatedb(aarr,awherestr,dbname) 数据库修改记录的函数  

insertdbex(aarr,dbname,rs_temp) 数据库增加记录的函数  

insertdbrs(aarr,dbname)         数据库增加记录(insert into)返回当前记录id  

insertdb(aarr,dbname)           数据库插入记录的函数  

dbclose()                       页面结束关闭数据库 

 

ASP/Visual Basic代码
  1. <%   
  2. '=============================================  
  3. 'dbinit()                        连接数据库  
  4. 'opendb(asqlstr,rs_temp)         打开记录集的函数  
  5. 'selectdb(awherestr,dbname,rs_temp) 打开表的函数   
  6. 'deletedb(awherestr,dbname)      数据库删除记录的函数  
  7. 'updatedb(aarr,awherestr,dbname) 数据库修改记录的函数  
  8. 'insertdbex(aarr,dbname,rs_temp) 数据库增加记录的函数  
  9. 'insertdbrs(aarr,dbname)         数据库增加记录(insert into)返回当前记录id  
  10. 'insertdb(aarr,dbname)           数据库插入记录的函数  
  11. 'dbclose()                       页面结束关闭数据库  
  12. '========================================  
  13. dim Conn,rs_Event   
  14.   Set rs_Event = Server.CreateObject("ADODB.RecordSet")   
  15.   
  16. function dbinit()   
  17.   if conn <> null then    
  18.     exit function    
  19.   end if    
  20. Set conn = Server.CreateObject("ADODB.Connection")   
  21. conn.ConnectionTimeout = 10   
  22. conn.CommandTimeout = 30   
  23. conn.CursorLocation = 3   
  24. conn.ConnectionString = "driver={SQL Server};server="+database_servername+";uid="+database_loginname+";pwd="+database_password+";database="+database_name   
  25.   
  26. on Error Resume Next  
  27. conn.Open    
  28.            if err<>0 then   
  29.                       response.write "请验查数据库服务器的连接信息是否正确。"  
  30.                       response.end   
  31.            end if   
  32. end function    
  33.   
  34. function opendb(asqlstr,rs_temp)   
  35. '打开记录集的函数  
  36. 'asqlstr 是输入sql语句  
  37. 'rs_temp 是输入记录集变量  
  38. 'on Error Resume Next  
  39.   Set rs_temp = Server.CreateObject("ADODB.RecordSet")   
  40.   if rs_temp.state = adStateOpen then    
  41.     rs_temp.close   
  42.   end if    
  43. '  Response.Write asqlstr  
  44.   set rs_temp=server.createobject("adodb.recordset")   
  45.   rs_temp.CursorLocation=adUseClient   
  46.   rs_temp.open asqlstr, conn,adOpnestatic,adLockReadOnly,adCmdText   
  47. end function    
  48.   
  49. function selectdb(awherestr,dbname,rs_temp)   
  50. '打开表的函数  
  51.   
  52. 'awherestr 是sql中条件很语句  
  53. 'dbname  是数据表名  
  54. 'rs_temp 是记录集变量  
  55. 'on Error Resume Next  
  56.   selectdb = 1   
  57.   if rs_temp.state = adStateOpen then    
  58.     rs_temp.close   
  59.   end if    
  60.   rs_temp.CursorLocation=adUseClient   
  61.  'response.write "Select * from "&dbname&awherestr  
  62.   
  63.   rs_temp.open "Select * from "&dbname&awherestr, conn,adOpnestatic,adLockReadOnly,adCmdText   
  64.   if Conn.Errors.Count > 0 then    
  65.       selectdb =  0   
  66.    end if    
  67. end function    
  68.   
  69.   
  70. function selectdbtop(awherestr,dbname,rs_temp)   
  71. '打开表的函数  
  72. 'awherestr 是sql中条件很语句  
  73. 'dbname  是数据表名  
  74. 'rs_temp 是记录集变量  
  75. 'on Error Resume Next  
  76.   selectdb = 1   
  77.   if rs_temp.state = adStateOpen then    
  78.     rs_temp.close   
  79.   end if    
  80.   rs_temp.CursorLocation=adUseClient   
  81.  'response.write "Select * from "&dbname&awherestr  
  82.   rs_temp.open "Select * from "&dbname&awherestr, conn,adOpnestatic,adLockReadOnly,adCmdText   
  83.   if Conn.Errors.Count > 0 then    
  84.       selectdb =  0   
  85.    end if    
  86. end function    
  87.   
  88.   
  89. function deletedb(awherestr,dbname)   
  90. '数据库删除记录的函数  
  91. 'awherestr 是sql中条件很语句  
  92. 'dbnaem 是数据库名称  
  93. 'on Error Resume Next  
  94.    deletedb = 1   
  95.    Conn.Execute "delete from "&dbname&awherestr   
  96.    if Conn.Errors.Count > 0 then    
  97.      deletedb =  0   
  98.    end if    
  99. end function    
  100. function updatedb(aarr,awherestr,dbname)   
  101. '数据库修改记录的函数  
  102. 'aarr 修改数组  
  103. 'awherestr 是sql中条件很语句  
  104. 'dbnaem 是数据库名称  
  105. 'on Error Resume Next  
  106. dim i    
  107.    updatedb = 1   
  108.    t_values = ""  
  109.    for i=0 to ubound(aarr) - 1   
  110.      t_values=t_values&aarr(i,0)"='"&replace(aarr(i,1),"'","''")"',"  
  111.    next   
  112.    t_values=left(t_values,len(t_values) -1)   
  113.    Conn.Execute "update "&dbname" set "&t_values&awherestr   
  114.   
  115.    if Conn.Errors.Count > 0 then    
  116.       updatedb =  0   
  117.    end if    
  118.       
  119. end function    
  120. function insertdbex(aarr,dbname,rs_temp)   
  121. 'on Error Resume Next  
  122.   dim i   
  123.    insertdbex = 1   
  124.   if rs_temp.state = adStateOpen then    
  125.     rs_temp.close    
  126.   end if     
  127.    rs_temp.ActiveConnection = conn   
  128.    rs_temp.CursorType = adOpenKeyset   
  129.    rs_temp.LockType = adLockOptimistic   
  130.    rs_temp.source = dbname   
  131.    rs_temp.Open   
  132.    rs_temp.AddNew   
  133.    for i=0 to ubound(aarr) - 1   
  134.      
  135.   
  136.     rs_temp(aarr(i,0)) = aarr(i,1)   
  137.    next     
  138.   
  139.   
  140.    rs_temp.update   
  141.    if  Err.number <>  0 then    
  142.       response.write err.description   
  143.       response.end   
  144.       insertdbex =  0   
  145.    end if    
  146. end function    
  147. function insertdb(aarr,dbname)    
  148. '数据库插入记录的函数  
  149. 'dbnaem 是数据库名称  
  150. 'on Error Resume Next  
  151.   dim i    
  152.    err.clear   
  153.    insertdb = 1   
  154.    t_values = ""  
  155.    t_fields = ""  
  156.    for i=0 to ubound(aarr) - 1   
  157.      t_fields = t_fields&aarr(i,0)","  
  158.      t_values=t_values"'"&replace(aarr(i,1),"'","''")"',"        
  159.    next   
  160.    t_values=left(t_values,len(t_values) -1)   
  161.    t_fields=left(t_fields,len(t_fields) -1)   
  162.   
  163.    Conn.Execute "insert into "&dbname" ("&t_fields") values ("&t_values")"  
  164.       
  165.    if (Conn.Errors.Count > 0) or (err.number <> 0)  then    
  166.       insertdb =  0   
  167.    end if    
  168.       
  169. end function    
  170.   
  171. function insertdbrs(aarr,dbname)    
  172. '数据库插入记录的函数  
  173. 'aarr 增加数组  
  174. 'dbnaem 是数据库名称  
  175. 'on Error Resume Next  
  176.   dim i    
  177.    err.clear   
  178.    insertdbrs = 1   
  179.    t_values = ""  
  180.    t_fields = ""  
  181.    for i=0 to ubound(aarr) - 1   
  182.      t_fields = t_fields&aarr(i,0)","  
  183.      t_values=t_values"'"&replace(aarr(i,1),"'","''")"',"        
  184.    next   
  185.    t_values=left(t_values,len(t_values) -1)   
  186.    t_fields=left(t_fields,len(t_fields) -1)   
  187.   
  188.    set returnrs=Conn.Execute("SET NOCOUNT ON;insert into "&dbname" ("&t_fields") values ("&t_values");SELECT @@IDENTITY")   
  189.   
  190.    if (Conn.Errors.Count > 0) or (err.number <> 0)  then    
  191.       insertdbrs =  0   
  192.    end if    
  193.   
  194.    insertdbrs=returnrs(0)   
  195.    returnrs.close   
  196.   
  197. end function    
  198. '页面结束关闭数据库  
  199. function dbclose()   
  200.   Conn.Close   
  201. end function    
  202.   
  203.   
  204. %>  
最后修改:2012 年 03 月 02 日
一分也是爱