Ok. I do see the point about how this is supplying its own return value. But in other situations where I have used this, this same code has always interpreted my params instead of 'treating them literally' (not sure if this is the right way to put it).
However, could very well be a characteristic of the DB/driver, in which case I'm not sure I'm too interested to really get to the bottom of it... :)
Same with "eval"; as you say; I'll just go for the solution that works for me and worry about effiency again when it really becomes a bottle neck.
Thanks (again :) for taking the time to respond!