I have the following code that I use on exit from my application. It successfully deletes childless parent records, but is there a better way to do this. My code looks a bit clanky and would like to streamline if possible.
Thanks in advance.
CW
Code:
strSQL = "SELECT tblPersonal.intPersId " & vbCrLf & _
"FROM tblPersonal LEFT JOIN tblContact ON
tblPersonal.intPersId=tblContact.intPersId " & _
vbCrLf & "WHERE (((tblContact.intPersId) Is Null));"
Set rsOrphan = CurrentDb.OpenRecordset(strSQL, dbOpenDynaset)
Set rsOrphan1 = CurrentDb.OpenRecordset(strSQL, dbOpenDynaset)
Do Until rsOrphan.EOF
DoCmd.SetWarnings False
intDeletePersId = rsOrphan!intPersId
strSQL1 = "DELETE tblPersonal.intPersId " & vbCrLf & _
"FROM tblPersonal " & vbCrLf & _
"WHERE tblPersonal.intPersId = " & intDeletePersId
DoCmd.RunSQL strSQL1
rsOrphan.MoveNext
Loop
DoCmd.SetWarnings True
CloseCurrentDatabase
CW
Last edited: