On 12 Feb 2009, at 15:18, Michael Lush wrote: [...]
Is there a better idiom for:-$rows = $dbh->do("SELECT * FROM foo WHERE baz >= 42") if ($rows != 0) { #do stuff }
Yes:a) use COUNT(*) instead so you're not sending a massive resultset over the wire.
b) use RaiseError => 1 so that it throws an exception instead of returns a value in-band. I hate in-band errors as people usually don't bother checking for them, making for some really exciting problems down the line.