Error 3061 with INSERT INTO

  • Thread starter Thread starter Guest
  • Start date Start date
G

Guest

I'm getting an Error 3061: Too few parameters. Expected 2. I can't see why
it's doing this. Can anyone help? I looked at the posts but can't find a
solution. Here's my code:

Dim db As DAO.Database
Set db = CurrentDb
Dim sql As String

sql = "INSERT INTO [Sol_SOQtyToShip] "
sql = sql & " SELECT * "
sql = sql & " FROM [qrySol_SOShipQty]; "

db.Execute " DELETE * FROM [Sol_SOQtyToShip];"
db.Execute sql, DB_FAILONERROR
db.Close
Me.Refresh

Any pointers is greatly appreciated.
 
I tried it without the field names in the INSERT INTO portion just to verify
and Access wouldn't accept it. Try changing the first line to:

sql = "INSERT INTO [Sol_SOQtyToShip] (Field1, Field2, Field3) "

Adjust the field names as necessary. You'll need one field name for each
field in the query qrySol_SOShipQty. The fields will need to be specified in
the order that would match them up with the fields in qrySol_SOShipQty
appropriately.

However, the error I received without specifying the fields was not the same
error you received. If you open qrySol_SOShipQty by itself does in need
values for any parameters?

You haven't opened db, so you don't need to close it. Instead of db.Close
use

Set db = Nothing
 
Back
Top