http://www.perlmonks.org?node_id=729835


in reply to Re: Perl DBI + Access bind issues
in thread Perl DBI + Access bind issues

I'm unfamiliar with what the square brackets accomplish for Access, but that's the gist of it. You don't want do though, because you don't get a statement handle back from that. You need to either use prepare, execute, and one of the fetch... methods like fetchall_arrayref or you need to use one of the selectall... methods such as selectall_hashref.

For example:

my $sth = $dbh->prepare( "select ?,? from ? where ? = ?" ); $sth->execute( '[is Active?]' ,'[is Deleted?]', '[is Deleted?]', 1 ); my $array_ref = $sth->fetchall_arrayref;

Replies are listed 'Best First'.
Re^3: Perl DBI + Access bind issues
by KurtSchwind (Chaplain) on Dec 12, 2008 at 14:13 UTC

    Right. Sorry. I know it's prepare/execute, not do. I was just giving the jist of the solution. I use DBI all the time for real databases. :)

    The square brackets are a type of quoting that Access uses because they allow freaking spaces and question marks in column and table names.

    --
    I used to drive a Heisenbergmobile, but every time I looked at the speedometer, I got lost.