borland Packages Class Hierarchy dx.sql.dataset Package
java.lang.Object +----com.borland.dx.dataset.Provider +----com.borland.dx.sql.dataset.JdbcProvider +----com.borland.dx.sql.dataset.ProcedureProvider +----com.borland.dx.sql.dataset.OracleProcedureProvider
Properties Methods
Implements Designable, LoadCancel, ConnectionUpdateListener, Task, Serializable, EventListener
The ProcedureProvider class provides data to the StorageDataSet by executing the specified stored procedure through JDBC. You connect this component to the StorageDataSet component through the StorageDataSet's provider property.
This class provides the data to the StorageDataSet however it does not attempt to make the StorageDataSet updatable or editable; it is the developer's responsibility to ensure this prior to the start of the resolution phase.
The stored procedure is expected to return a result set. For stored procedures that don't return values, use either static form of the callProcedure() method to execute them.
public ReadWriteRow getParameterRow() public void setParameterRow(ReadWriteRow value)The ReadWriteRow that is used to fill in parameter values for parameterized queries or stored procedures for StorageDataSet extensions such as QueryDataSet and ProcedureDataSet.
public final ProcedureDescriptor getProcedure() public final void setProcedure(ProcedureDescriptor procedureDescriptor)Stores the ProcedureDescriptor object that contains property settings for the stored procedure.
public static final int callProcedure(Database database, String procedureSpecification, ReadWriteRow parameters)Calls a stored procedure. For example,
callProcedure(db1,"call foo",null);
This method can also be used for queries with an output parameter, for example:
callProcedure(db1,"select sum(expense) into ? from expense_table",paramRow);
public static final int callProcedure(Database database, String procedureSpecification, ReadWriteRow[] parameters)Calls a stored procedure with named access to multiple rows of parameters. The parameters are accessed via an optional tag of the named parameters. The tag is the number of the passed ReadWriteRow, starting with 1. For example, the following code passes the value of the 'Name' column from the parameter row 'param1' as the first parameter, and the value of the 'Name' column from the parameter row 'param2'.
callProcedure(db1,"call foo(:2.Name,:1.Name)", new ReadWriteRow[]{param1,param2});
If no tag is given, the parameter name is found by searching the parameter rows from left to right. Therefore, tags can be used to differentiate columns with identical names in different parameter rows.
public void ifBusy()Tests whether the data is present. This method is used when providing data asynchronously to determine whether editing, resolving, and other such actions should be blocked until the data is available.