Now()
Now is an Access function that Oracle doesn't understand. In the INSERT statement the now is part of the statement and Oracle doesn't know how to interpret it. In the second example using a recordset, the value of now is written to the access recordset.
If you want to use the INSERT try...