I have developed a program suite on Windows that talks to a Teradata over
ODBC and works fine. I need to port it to DBD::Teradata on an AIX box, as
ODBC is not installed. I have built a local perl (5.14) (cc_r is missing, so
I had to compile a copy with gcc) and I have installed DBI ver 1.6.16 and
DBD::Teradata version 12.001 (from Prescient)
I can execute a connect correctly. However, when I try and run a simple test
program that executes a stored procedure, the $dbh->execute fails.
The core of the test program is:
$refStr = "call crchampsview.FD622_Determine_Date_Range_SP( '2011-04-01' )";
$sth = $dbh->prepare($refStr);
$sth->execute;
$row = $sth->fetchrow_hashref;
$sth->finish;
print Dumper($row);
Called from ODBC the results are:
$VAR1 = {
'Beginning_Date' => '2011-03-27',
'Ending_Date' => '2011-04-02',
'\'FD622\'' => 'FD622'
};
But called through the DBD::Teradata, the program fails as:
DBD::Teradata::st execute failed: Failure 7968:
FD622_Determine_Date_Range_SP:The recipient of the result set does not
support dynamic result sets. on Statement 0. at ./trPDateSPTest.pl line 61.
$VAR1 = {
'Input_Date' => '2011-04-01'
};
Explanations and/or work-arounds/corrections will be most gratefully
received.
Thanx
Jeff Tate
CHAMPS Project Office DW/TCO Manager
(415) 606 7621 (cell)
(925) 887 6825 (eFax)
tatej1@michigan.gov (scheduling)