Peter,

My guess is that you need comma's between the arguments of a procedure/function
:

      $sth = $dbh->prepare("BEGIN $DICEpackage.DROP_INDEXES(:1:2:3); END;");

should be :

      $sth = $dbh->prepare("BEGIN $DICEpackage.DROP_INDEXES(:1, :2, :3);
END;");

Brgds,

Mark


"Loo, Peter # PHX" wrote:

>
> Hi All,
>
> Can someone please tell me what this is all about?
>
> DBD::Oracle::st execute failed: ORA-01036: illegal variable name/number (DBD
> ERROR: OCIBindByName) at sma_run_aggs.pl line 172.
>
> Here is my syntax:
>
>     foreach $tableName (@tableList) {
>       print STDERR "\n\nDropping indexes (${tableName}).\n";
>       $sth = $dbh->prepare("BEGIN $DICEpackage.DROP_INDEXES(:1:2:3); END;");
>       $sth->execute("${tableName}", "ALL", "FALSE"); <=== Line 172
>       sub_dbms_output_errors($SearchString, $dbh);
>       print STDERR "Truncating table (${tableName}).\n";
>       $sth = $dbh->prepare("BEGIN $DICEpackage.TRUNCATE_TABLE(:1:2); END;");
>       $sth->execute("${tableName}", "ALL");
>       sub_dbms_output_errors($SearchString, $dbh);
>       }
>
> Thanks.
>
> Peter Loo

--
Mark Vandenbroeck                      Mobile : +32-495-59.55.62
EMEA Support Information Systems       Email  : [EMAIL PROTECTED]
                                       AIM    : markvdb


Reply via email to