Stored Procedures
Stored Procedures have not been fully implemented in this version and are not supported.
However, if you must use Stored Procedure, please be aware of the following:
Out parameters cannot be retrieved using Storage Objects. Specifying DBPARAMFLAGS_ISLONG
for output parameters is not supported. However, the user can retrieve Stored Procedure
Out parameters as Storage Object via Rowset by setting value of the provider specific
property TDPROP_INIT_OUTPUTPARAMETERLOCATION to “ROWSET”. Please be aware that this
property is only for backward compatibility. See “Initialization Property Group” on page 98 for more information.
ICommand::Execute always returns SQL_SUCCESS when the DDL statements CREATE PROCEDURE
or REPLACE PROCEDURE are executed.
If the CREATE PROCEDURE or the REPLACE PROCEDURE fails, ICommand::Execute should return
an error code and the error messages should return to the consumer through the IErrorRecords
interface.
However, in this version of OLE DB Provider for Teradata, error messages generated
while compiling a stored procedure are returned as a rowset.
When executing a stored procedure, OLE DB Provider for Teradata is unable to derive
information about parameters.
When the consumer uses parameters, the consumer must call ICommandWithParameters::SetParameters
to set the information on parameters.