I do not get an error with this statement either, but it does not mean it is correct, even though the field name is 'name' and not LucaMS:
Cur = mDB.ExecQuery2(Query, Array As String("ID", "LucaMS"))
Also, I can do this: Query = "SELECT ?, ?, 'Erel', 'Klaus' FROM tbl" and not get an error.
See this link: http://stackoverflow.com/questions/...terize-the-table-name-in-a-prepared-statement
Mahares is correct. You cannot replace field names and table names with question marks.
Parameterized queries is a feature of the SQL engine. It is not a simple string replacement.