molly has asked for the wisdom of the Perl Monks concerning the following question:
Thank you for your help on my previous quandary! I found the error, but have moved on to others. At this point in my program I'm having trouble inserting retrieved values from the PubMed database back into my Access database. Does the following error message generally refer to a problem with SQL scripts or with the Perl script?
DBD::ODBC::db prepare failed: [Microsoft][ODBC Microsoft Access Driver +] Syntax error in INSERT INTO statement. (SQL-42000)(DBD: st_prepare/ +SQLPrepare err=-1) at SearchPubMed2.pl line 325. Can't call method "execute" on an undefined value at SearchPubMed2.pl +line 326.
Here is a segment of the code surrounding that line 326, if it helps:
if ($AtLeastOneValueToInsert == 1) { $FinalInsertSQL = $StartInsertSQL . $InsertColumnSQL . $InsertValu +esSQL; if ($debug1 == 1) {print "now updating SearchResults table\n"}; if ($debug == 1) { print "Updating SearchResult: FinalSQL = $FinalInsertSQL \n\n"; +# debug } $sth = $dbh->prepare($FinalInsertSQL); $sth->execute() # Execute the insert or die "Couldn't execute statement: " . $sth->errstr; $sth->finish;
Here is the "insert into" variable definition from earlier on in that subroutine:
my $StartInsertSQL = 'insert into SearchResult(';
Thanks for any advice!!
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re: Another DB question
by GrandFather (Saint) on Jul 19, 2007 at 01:16 UTC | |
|
Re: Another DB question
by mr_mischief (Monsignor) on Jul 19, 2007 at 02:34 UTC |