Is it possible to get a report of the records that are updated using a update query, without using a recordset?
Ex:
sqltext = update table employees set bonus = 0 where salary > 50000
DoCmd.RunSQL sqltext
After this query runs, is it possible to get the name of the employees for whom this update query was performed?
I know its an old question, but there was no answer that directly answered the OP question (I got here via Google Top 3 results while trying to remember the syntax) If you use the Execute method, you can get the number of records affected directly:
It's never a good idea to use
DoCmd.RunSQL
as it generates a prompt (which you have to turn off if you don't want it), and it completes the updates even if errors occur, and doesn't report the errors. Much better is to replace it with a function that executes the same SQL:Once you've placed this in a public module, you can easily do a global search and replace for
DoCmd.RunSQL
to replace it withSQLRun
.EDIT: Another version of this function that returns the number of records affected is here.
I don't see any way at this time to get the information after the update query has run unless you have another distinguishing field (maybe an updated date field). Why not run a select query for it and run a report off of that data, THEN run the update query to change the values for 'bonus'.
Let me know if this helps! JFV