提交新记录前检查记录是否存在
Check if record exists before submitting new
我目前有一个函数,可以在 Access 2010 中使用 SQL 语句将记录插入 table。
Sub btnSubmit_Click()
dim strSQL as string
strSQL="INSERT INTO tblMaster (PeriodID,ClassID,ChildID,SubjectID,LevelID) VALUES (" & cboPeriod & "," & cboClass & "," & cboName & "," & tbSubject1 & "," & cboLevel1 & ")"
CurrentDB.Execute strSQL
End Sub
我首先想做的是检查 'tblMaster' 是否已经有相同的记录。
我该如何实现?
您可以使用另一个 select 语句检查该记录是否存在。
我原以为在最坏的情况下只有几个唯一标识符;以下应该工作。
Sub btnSubmit_Click()
Dim strSQL as string
strSQL = "INSERT INTO tblMaster (PeriodID, ClassID, ChildID, SubjectID, LevelID) VALUES (" & _
cboPeriod & ", " & cboClass & ", " & cboName & ", " & tbSubject1 & ", " & cboLevel1 & ")"
If DCount("*", "tblMaster", "PeriodID = " & cboPeriod & " AND " & _
"ClassID = " & cboClass & " AND " & _
"ChildID = " & cboName & " AND " & _
"SubjectID = " & tbSubject1 & " AND " & _
"LevelID = " & cboLevel1) = 0 Then
CurrentDB.Execute strSQL
Else
MsgBox "A Record already exists for this information.", vbOKOnly, "No Records Added."
End If
End Sub
我目前有一个函数,可以在 Access 2010 中使用 SQL 语句将记录插入 table。
Sub btnSubmit_Click()
dim strSQL as string
strSQL="INSERT INTO tblMaster (PeriodID,ClassID,ChildID,SubjectID,LevelID) VALUES (" & cboPeriod & "," & cboClass & "," & cboName & "," & tbSubject1 & "," & cboLevel1 & ")"
CurrentDB.Execute strSQL
End Sub
我首先想做的是检查 'tblMaster' 是否已经有相同的记录。
我该如何实现?
您可以使用另一个 select 语句检查该记录是否存在。
我原以为在最坏的情况下只有几个唯一标识符;以下应该工作。
Sub btnSubmit_Click()
Dim strSQL as string
strSQL = "INSERT INTO tblMaster (PeriodID, ClassID, ChildID, SubjectID, LevelID) VALUES (" & _
cboPeriod & ", " & cboClass & ", " & cboName & ", " & tbSubject1 & ", " & cboLevel1 & ")"
If DCount("*", "tblMaster", "PeriodID = " & cboPeriod & " AND " & _
"ClassID = " & cboClass & " AND " & _
"ChildID = " & cboName & " AND " & _
"SubjectID = " & tbSubject1 & " AND " & _
"LevelID = " & cboLevel1) = 0 Then
CurrentDB.Execute strSQL
Else
MsgBox "A Record already exists for this information.", vbOKOnly, "No Records Added."
End If
End Sub