The Linux Page

Error: Too few parameters. Expected 1.

What a strange error!

You execute an SQL statement with the usual OpenRecordset() function in MS-Access. So as usual, you put one parameter to the function, the SQL order.

You have written 100 of those before and had no problems.

Today, the last one you wrote says:

Too few parameters. Expected 1.

You look at this latest statement and your older statements and you just plainly don't get it. There is one parameter, it is the SQL string and it looks just fine.

So? What's wrong?

Simple! The error actually means a field name in the SQL statement is wrong. Yeah! That's how you need to translate this error. Not too good if you ask me.

Note that maybe because of a misspelling or a field that you had in that table and now you removed it.

I guess that what is happening is that the MS-Access converter cannot find a given column and it just cannot replace it and then it says it is missing instead of telling you that it is wrong with the name of the offensive column. (okay... it is missing from the table, but that's not what you'd expect in the error message, is it?!)

Oh! Yeah! Because it would be so hard for them to let us know the name of the column they don't like...

Note: you can get a larger number instead of just 1. I guess that if multiple columns are invalid, then it tells you how many are wrong. Too few parameters. Expected 2, 3, 4, 5...