in reply to named placeholders in DBI
In this specific example the query would be:# a new record to be inserted my %user_rec = ( first_name => 'Foo', last_name => 'Bar', phone => '12345678', address => '123 Foo St', ); ## ## . . . some code here . . . ## # possibly somewhere in an add_db_user() sub # ... my @fields = keys %user_rec; my @values = @user_rec{@fields}; my $placeholders = join(",", ("?") x scalar @fields); my $sql = sprintf(qq~ INSERT INTO user(%s) VALUES(%s) ~, join(",", @fields), $placeholders); my $sth = $dbh->prepare($sql); $sth->execute(@values);
Introducing placeholders here may not be as useful or productive as say in a case where you build your SQL query 'manually'. ;)INSERT INTO user(first_name,address,last_name,phone) VALUES(?,?,?,?)
Robert Wilensky, University of California
|
---|
Replies are listed 'Best First'. | |
---|---|
Re: Re: named placeholders in DBI
by simonm (Vicar) on Sep 22, 2003 at 21:25 UTC |