当前位置: 首页 > 图文教程 > 网络编程 > ASP > 适合所有表的添加、删除、修改的函数

ASP
VPN技术详解(下)
微软Page Counter 组件参考(一)
微软Page Counter 组件参考(二)
@ 指令参考之一 - @CODEPAGE
@ 指令参考之二 - @ENABLESESSIONSTATE
@ 指令参考之三 - @LANGUAGE
@ 指令参考之四 - @LCID
@ 指令参考之五 - @TRANSACTION
SQL数据操作基础(初级) 1
SQL数据操作基础(初级) 2
SQL数据操作基础(初级) 3
Response对象1
Response对象2
Response对象3
Response对象4
Response对象5
WSH简介
WSH实用讲座:第一讲 获取机器的网络属性配置
WSH实用讲座---第二讲 创建用户、目录和站点
WSH实用讲座---第三讲 创建邮箱

ASP 中的 适合所有表的添加、删除、修改的函数


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-14   浏览: 153 ::
收藏到网摘: n/a

由于数据库中的每张表中的字段名不一样,所以在写后台程序的时候,通常会写多个页面,对应不同的表。这里介绍一个函数,适合所有的表,不需要再为每一个表写添加,删除,修改页面了,这样会省下许多时间去做别的事。


<%
'===========================================
' 函数功能:实现向数据库中任何表中添加、删除、修改内容
' 作    者:wangsdong
' 网    站: http://www.aspprogram.cn
' 文章为作者原创,转载请注明文章出处、保留作者信息,谢谢支持!
' 参数意义:tablename为表名,str的值是insert,delete,update 表示
' 要执行的语句是添加、删除、修改。id为自动编号类型字段,使用方
' 法见举例 
'===========================================

Function add_del_update(tablename,str,id)
Select Case str
 Case "insert":
   sql="select * from ["&tablename&"] where id=null"
   rs.open sql,conn,1,3
   rs.addnew
   For Each key In request.Form
      rs(CStr(key))=request(key)
   Next
   rs.update
   rs.close
 Case "update":   
   sql="select * from ["&tablename&"] where id="&id
   rs.open sql,conn,1,3  
   For Each key In request.Form
      if key<>"id" then
        rs(CStr(key))=request(key)
      end if
   Next
   rs.update
   rs.close
 Case "delete":   
   sql="delete from ["&tablename&"] where id in("&id&")"
   rs.open sql,conn,1,3
 Case ""
 End Select
 End Function
%>

使用前提条件:表中必须有一个字段名为id的自动增加类型的字段提交前的表单名必须和数据库中的字段名一样,且按纽不可以使用name属性。


<%
' 向table1表中添加一条记录
 call add_del_update("table1","insert","")
' 修改table1表中的id=5(id放在上一页action中,也可以是隐藏表单)的记录  
  id=request("id")
  call add_del_update("table1","update",id)
' 删除table1表中的一些记录,id是上一页action中,也可以是某一表单
  id=request("id")
  call add_del_update("table1","delete",id)
%>