[Webinar] Streamline your web hosting managementRegister Today

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 145
  • Last Modified:

Resume Next Question - Dup Record in Database Table

Hello all.  I have some VB code that loops through and inserts records into an access table.   I get to a record that already exists in my table and access throws a error change could not be inserted because of dup key.  Then VB throws a file already open error on the .Update line of the below code.  Should I just do a Resume Next or something?  I dont want to check the DB everytime with a select statement.  Any ideas?

With dbAccessDb.OpenRecordset("tblCustomer", dbOpenDynaset)
                        .AddNew
                        .Fields!Acct = Acct                        
                        .Fields!Cust = Cust
                        .Update
                        .Close
                    End With
0
sbornstein2
Asked:
sbornstein2
  • 2
1 Solution
 
NightmanCTOCommented:
I wouldn't simply resume next. What if it is a different error? How would you trap it?

Rather create an error handler - eg.

On Error Goto MY_ERR:

With dbAccessDb.OpenRecordset("tblCustomer", dbOpenDynaset)
                        .AddNew
                        .Fields!Acct = Acct                        
                        .Fields!Cust = Cust
                        .Update
                        .Close
                    End With

MY_ERR:
If err.Number<>0 then
  if err.Number=x then
   'do nothing because I don't care about duplicates being rejected
  else
      MsgBox Err.Description
  endif
endif
0
 
Kinger247Commented:


Something Like ...


On Error GoTo ErrHandler:

your loop .....

With dbAccessDb.OpenRecordset("tblCustomer", dbOpenDynaset)
  .AddNew
  .Fields!Acct = Acct
  .Fields!Cust = Cust
  .Update
  .Close
End With

ErrHandler:
Resume Next

your loop .....
0
 
sbornstein2Author Commented:
i dont want the overhead of having to check the database each time before the insert
0
 
NightmanCTOCommented:
You wouldn't be - you would just handle the error on the insert and resume IF the error was a PK violation
0

Featured Post

Receive 1:1 tech help

Solve your biggest tech problems alongside global tech experts with 1:1 help.

  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now