Heim  >  Artikel  >  Datenbank  >  Access浅析通用删除某表某字段满足条件的记录两个函数

Access浅析通用删除某表某字段满足条件的记录两个函数

WBOY
WBOYOriginal
2016-06-07 15:30:502042Durchsuche

一、调用方式: Sub Acchelp_Test() '如果是 条件 是长整型 Call AccHelp_DeleteFldNumRow("表名称", " 字段 名称", 条件 ) '如果是 条件 是文本型 'Call AccHelp_DeleteFldStrRow("表名称", " 字段 名称", 条件 ) End Sub 二、两个 函数 : Public Function

一、调用方式:

Sub Acchelp_Test()

'如果是条件是长整型

Call AccHelp_DeleteFldNumRow("表名称", "字段名称", 条件)

'如果是条件是文本型

'Call AccHelp_DeleteFldStrRow("表名称", "字段名称", 条件)

End Sub

二、两个函数

Public Function AccHelp_DeleteFldStrRow(tblName As String, conditionFldName As String, strCondition As String)

'功能:根据某字段条件删除某表中某个字段符合条件(必须是文本型)的整行记录,需引用DAO3.6

' 一般用于根据文本型的订单号(或合同号等)来删除表中的一条记录,亦可删除满足条件的多条记录

'修改历史:2006/1/3

'说明:

'tblName 是指表的名称

'conditionFldName 是指应用条件字段的名称

'strCondition 是指条件

'作者:竹笛 (微软最有价值专家)

'说明:您可以无偿地在您自已开发的软件中应用此函数,为了尊重作者的劳动,请保留这些说明信息。同时您不得用于盈利的商业用途,欢迎大家提出修改意见,并就此函数与作者交流

'邮箱:admin@accessoft.com

On Error GoTo Err_AccHelp_DeleteFldStrRow:

Dim strSQL As String

Dim rst As DAO.Recordset

Set rst = CurrentDb.OpenRecordset(tblName, dbOpenDynaset)

rst.MoveFirst

Do Until rst.EOF

If rst(conditionFldName) = strCondition Then

rst.Delete

End If

rst.MoveNext

Loop

rst.Close

Set rst = Nothing

Exit_AccHelp_DeleteFldStrRow:

Exit Function

Err_AccHelp_DeleteFldStrRow:

rst.Close

Set rst = Nothing

Resume Exit_AccHelp_DeleteFldStrRow

End Function

 

Public Function AccHelp_DeleteFldNumRow(tblName As String, conditionFldName As String, NumCondition As Long)

'功能:根据某字段条件删除某表中某个字段符合条件(必须是长整型数字)的整行记录,需引用DAO3.6

' 一般用于根据序号来删除表中的一条记录,亦可删除满足条件的多条记录

'修改历史:2006/1/3

'说明:

'tblName 是指表的名称

'conditionFldName 是指应用条件字段的名称

'NumCondition 是指条件

'作者:竹笛 (微软最有价值专家)

'说明:您可以无偿地在您自已开发的软件中应用此函数,为了尊重作者的劳动,请保留这些说明信息。同时您不得用于盈利的商业用途,欢迎大家提出修改意见,并就此函数与作者交流

'邮箱:admin@accessoft.com

On Error GoTo Err_AccHelp_DeleteFldNumRow:

Dim strSQL As String

Dim rst As DAO.Recordset

Set rst = CurrentDb.OpenRecordset(tblName, dbOpenDynaset)

rst.MoveFirst

Do Until rst.EOF

If rst(conditionFldName) =NumCondition Then

rst.Delete

End If

rst.MoveNext

Loop

rst.Close

Set rst = Nothing

Exit_AccHelp_DeleteFldNumRow:

Exit Function

Err_AccHelp_DeleteFldNumRow:

rst.Close

Set rst = Nothing

Resume Exit_AccHelp_DeleteFldNumRow

End Function

原文参考自站长网http://www.software8.co/shujuku/access/2395.html

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn