Thanks for the suggestion. Placing the $sth->finish before the update call worked. I should have had COUNT(*) too (that was a typo) so a fetchrow()worked in that instance.
Thanks
If you change to select count(*) and call fetchall* you should not need to call finish. Generally speaking, if you are calling finish it should be an indication that you /might/ be doing something wrong.