DSIExtProcedure Class Reference

An abstract class that represents a stored procedure from the DSII. More...

Inherits Simba::Support::UnsafeSharedObject.

List of all members.

Public Member Functions

virtual void Close ()
 Close the stored procedure.
virtual void Execute (Simba::SQLEngine::ParameterValues *in_parameters)=0
 Executes the stored procedure, using the given parameters.
virtual void GetCatalogName (simba_wstring &out_catalogName)
 Get the catalog name of the stored procedure.
virtual
Simba::SQLEngine::ParameterMetadataList
GetParameters ()=0
 Retrieves the parameters for the stored procedure which can provide metadata for each parameter.
virtual void GetProcedureName (simba_wstring &out_procName)
 Get the name of the stored procedure.
virtual Simba::DSI::IResultsGetResults ()
 Get a pointer reference to the results of the stored procedure.
virtual void GetSchemaName (simba_wstring &out_schemaName)
 Get the schema name of the stored procedure.
virtual bool HasReturnValue ()
 Get whether this stored procedure has a return value.
virtual ~DSIExtProcedure ()
 Destructor.

Protected Member Functions

virtual Simba::DSI::IResultsDoGetResults ()=0
 Get a pointer reference to the results of the stored procedure.
 DSIExtProcedure (const simba_wstring &in_catalogName, const simba_wstring &in_schemaName, const simba_wstring &in_procName)
 Constructor.

Detailed Description

An abstract class that represents a stored procedure from the DSII.


Constructor & Destructor Documentation

virtual ~DSIExtProcedure (  )  [inline, virtual]

Destructor.

DSIExtProcedure ( const simba_wstring in_catalogName,
const simba_wstring in_schemaName,
const simba_wstring in_procName 
) [protected]

Constructor.

Parameters:
in_catalogName The name of the catalog in which the procedure resides. Can be empty if catalogs are not supported.
in_schemaName The name of the schema in which the procedure resides. Can be empty if schemas are not supported.
in_procName The name of the stored procedure. Cannot be empty.
Exceptions:
SELogicErrorException if in_procName is empty or NULL.

Member Function Documentation

virtual void Close (  )  [virtual]

Close the stored procedure.

NOTE: If the stored procedure is not open, this method will _not_ throw an exception.

virtual Simba::DSI::IResults* DoGetResults (  )  [protected, pure virtual]

Get a pointer reference to the results of the stored procedure.

This function will be called to retrieve the metadata about any result sets that are returned. If no result set is returned but a row count is returned, then a result with that row count should be returned.

If no results are generated, NULL should be returned.

Returns:
The results of the stored procedure. (NOT OWN)
virtual void Execute ( Simba::SQLEngine::ParameterValues in_parameters  )  [pure virtual]

Executes the stored procedure, using the given parameters.

The parameters used for executing the stored procedure will be provided in the form of an ETValueList containing ETParameters. The parameters will correspond to the parameter metadata provided by GetParameters(), and in the case of return, output, and input/output parameters should have their output values set.

After execution, full results should be accessible via GetResults().

Parameters:
in_parameters The parameters to use when executing the stored procedure. (NOT OWN)
virtual void GetCatalogName ( simba_wstring out_catalogName  )  [virtual]

Get the catalog name of the stored procedure.

If catalog is not supported, out_catalogName will be empty after the method is returned.

Parameters:
out_catalogName The catalog name.
virtual Simba::SQLEngine::ParameterMetadataList* GetParameters (  )  [pure virtual]

Retrieves the parameters for the stored procedure which can provide metadata for each parameter.

May return NULL if there are no parameters associated with the stored procedure.

This method may be called after query preparation and before execution to retrieve metadata about the parameters in the stored procedure.

Returns:
Reference to a vector of parameters that provides access to metadata. (NOT OWN)
virtual void GetProcedureName ( simba_wstring out_procName  )  [virtual]

Get the name of the stored procedure.

Parameters:
out_procName The name of the stored procedure.
virtual Simba::DSI::IResults* GetResults (  )  [virtual]

Get a pointer reference to the results of the stored procedure.

This function will be called to retrieve the metadata about any result sets that are returned. If no result set is returned but a row count is returned, then a result with that row count should be returned.

If no results are generated, a row count result with ROW_COUNT_UNKNOWN should be returned.

This function will be called after query preparation and before execution to retrieve metadata about the results that will be returned for this stored procedure. If accurate metadata cannot be supplied, returning at least a single result of the correct type with no metadata will suffice as long as correct metadata is supplied after Execute(). Be aware that some applications may have problems if metadata is not available at prepare time.

Returns:
The results of the stored procedure. (NOT OWN)
virtual void GetSchemaName ( simba_wstring out_schemaName  )  [virtual]

Get the schema name of the stored procedure.

If catalog is not supported, out_schemaName will be empty after the method is returned.

Parameters:
out_schemaName The schema name.
virtual bool HasReturnValue (  )  [virtual]

Get whether this stored procedure has a return value.

Returns:
True if this stored procedure has a return value; false otherwise.

The documentation for this class was generated from the following file:

Generated on Wed May 17 14:21:17 2017 for SimbaEngine 10.1.3.1011 by simba