自动获取表格数据添加,修改数据库数据的类

80酷酷网    80kuku.com

  数据|数据库此类个人觉得是很有用的!!!对于以后提交表单数据,不用再一个一个去写了,直接引用该类,再SAVE或EDIT即可,简单多了,但当然,因为它不是智能的,所以对于某些数据格式是不能做核查的!!使用示例代码如下:
<%
Dim action
action=Request("action")
If action="save" Then
Dim objClass
Set objClass=New SaveFormData
objClass.MDBFile=Server.Mappath("data/data.mdb")
'objClass.SaveRecord "number","*","id"
objClass.SaveRecord "number","Num1,text",""
'objClass.EditRecord "number","*","id=15","id"
Set objClass=Nothing
End If
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>无标题文档</title>
</head>

<body>
<form name="form1" method="post" action="index.asp?action=save">
<table width="100%" border="0" cellspacing="2" cellpadding="0">
<tr>
<td width="19%" height="20">Num1</td>
<td width="81%"><input name="num1" type="text" id="num1"></td>
</tr>
<tr>
<td height="20">Num2</td>
<td><input name="num2" type="text" id="num2"></td>
</tr>
<tr>
<td height="20">Num3</td>
<td><input name="num3" type="text" id="num3"></td>
</tr>
<tr>
<td height="20">Text</td>
<td><input name="Text" type="text" id="Text"></td>
</tr>
<tr>
<td height="20"> </td>
<td><input type="submit" name="Submit" value="提交"></td>
</tr>
</table>
</form>
</body>
</html>




类的说明:

如果是使用ACCESS数据库,则首先指定数据库的绝对地址![Obj].MDBFile=“数据库文件地址“
如果不是ACCESS数据库,则指定类对象的CONN属性,示例:Set [Obj].Conn=[Connection对象]

然后就可以使用
[Obj].SaveRecord(“表名“,“填加字段名列表“,“不填加字段名列表”) = 新增加数据
说明: 此方法返回True或False,True则新填加新数据成功,否则失败!
“表名”:要填表加新记录数据的数据表名
“填加字段名列表”:新添数据时的字段名,用“逗号”隔开,如:“name,word,sex“
“不填加字段名列表”:添加数据时对此字段列表里包括的字段不进行添加操作。
[Obj].SaveRecord “User“,“*“,“id“

[Obj].EditRecord(“表名“,“修改字段名列表“,“修改条件”,“不修改字段列表“)=修改某条数据
“表名”,“修改字段列表”和“不修改字段列表”同SAVERECORD方法一样!
“修改条件”:SQL查询条件,不带“WHERE”
示例:[Obj].EditRecord “User“,“Pass,Sex“,“id=22“,““

注意:“填加字段列表”和“修改字段列表”可以使用“”值或“*”值,表明修改所有字段,但建议此时“不填加字段名列表”和“不修改字段名列表”里写上“自动增加”型的字段名,要不然填加或修改数据时将会失败!


类代码:
<%
'/*****************************************************************************************
Class SaveFormData
Private C_ErrNumber '错误返回代码
Private C_NumericAllowNull '数字型字段时是否允许接收非数字值,True = 可以(非数字值时用0代替) False = 不可以(非数字值时将会出错,ErrNumber = 9)
Private C_DateTimeAllowNull '日期时间型字段时是否允许接收非日期时间,True = 可以(非日期时间值时用(Now)代替) False = 不可以(非日期时间值时将会出错,ErrNumber = 10)
Private C_Conn '数据库CONN连接对象
Private C_MDBFile 'ACCESS数据库文件地址,如果不是设置CONN属性,则该属性一定不能为空!

Private Sub Class_Initialize
C_Conn=Null
C_NumericAllowNull=True
C_DateTimeAllowNull=True
End Sub

Private Sub Class_Terminate
If Not IsNothing(C_Conn) Then
C_Conn.Close
Set C_Conn=Nothing
End If
End Sub
'/***************************************************************************
'/* 设置/返回Conn对象
'/*说明:添加这个是为了其它数据库(如:MSSQL)
'/***************************************************************************
Public Property Set Conn(sNewValue)
On Error Resume Next
If Not IsNothing(sNewValue) Then
C_Conn.Close
Set C_Conn=Nothing
End If
Set C_Conn=sNewValue
End Property
Public Property Get Conn
If Not IsNothing(C_Conn) Then
Set Conn=C_Conn
Else
Conn=Null
End If
End

分享到
  • 微信分享
  • 新浪微博
  • QQ好友
  • QQ空间
点击: