Oh man this is embarrassing :-) A sharp-eyed reader pointed out that I was not doing what I thought I was doing!
"I noticed the following (edited for emphasis): > foreach $i (@resources){ > $csr_prefapp->execute($i) > $csr_prefapp->fetchrow()) > if (!$have_pref){ > $csr_allapp->execute($i) > $csr_prefapp->fetchrow()) > } > } Shouldn't that last "prefapp" be "allapp" instead?" Indeed it should, and with that error corrected, all is well! The error makes perfect sense now, since I'd already returned all the rows for that cursor. (and really dumb me, I've seen this very error in the past when I've referenced the wrong cursor....) -- Bruce Johnson "Wherever you go, there you are" B. Banzai, PhD