perlygapes:
I wouldn't expect that to work: In order to prepare/compile the SQL statement, PostgreSQL is going to want to know the column names in advance. I'd suggest
something a bit more like this:
# Given a list of column names build a placeholder list of the same le
+ngth
my @columns = ( 'customer_ID', 'reference1', 'foo', ... );
my $placeholders = join(", ", map { '?' } @columns);
# Build the SQL statement
my $SQL = "INSERT INTO myTable ("
. join(", ", @columns) # column names
. ") VALUES ($placeholders)";
my $STH = $DBH->prepare_cached($SQL);
# Then if you have a reference to an array of values, use it like:
my $rValues = [ 'Customer_1', 'ref5', 1, ... ];
$STH->execute(@$rValues);
# Or you can hand it an array:
my @values = ( 'Customer_2', 'ref99', 3, ... );
$STH->execute(@values);
# or even just explicit values:
$STH->execute("Customer 5", "ref3", 7, ... );
...roboticus
When your only tool is a hammer, all problems look like your thumb.
-
Are you posting in the right place? Check out Where do I post X? to know for sure.
-
Posts may use any of the Perl Monks Approved HTML tags. Currently these include the following:
<code> <a> <b> <big>
<blockquote> <br /> <dd>
<dl> <dt> <em> <font>
<h1> <h2> <h3> <h4>
<h5> <h6> <hr /> <i>
<li> <nbsp> <ol> <p>
<small> <strike> <strong>
<sub> <sup> <table>
<td> <th> <tr> <tt>
<u> <ul>
-
Snippets of code should be wrapped in
<code> tags not
<pre> tags. In fact, <pre>
tags should generally be avoided. If they must
be used, extreme care should be
taken to ensure that their contents do not
have long lines (<70 chars), in order to prevent
horizontal scrolling (and possible janitor
intervention).
-
Want more info? How to link
or How to display code and escape characters
are good places to start.