I already support sqlite3's numeric placeholders via the standard DBI API. Switching to non-numeric placeholders will be more complex (I'll have to use a hash instead of an array to store the placeholders) but quite doable.
In case I was giving off the wrong idea, I don't mean to lose support for the positional parameters, but rather to support both posit/named concurrently.
But yes, the ability to do this would be very powerful, but hopefully very simple to implement:
... my $sth = $dbh->prepare( "SELECT * FROM bar ". "WHERE baz = :yours OR foo = :mine OR zee = :yours" ); $sth->execute( { 'yours' => 3, 'mine' => 'hello' } ); ... $sth->execute( { 'yours' => 6, 'mine' => 'goodbye' } ); ...
-- Darren Duncan