Remote Procedure functions
[The db-lib API]
Functions used with stored procedures.
More...
Functions |
DBBOOL | dbhasretstat (DBPROCESS *dbproc) |
| Determine if query generated a return status number.
|
int | dbnumrets (DBPROCESS *dbproc) |
| Get count of output parameters filled by a stored procedure.
|
BYTE * | dbretdata (DBPROCESS *dbproc, int retnum) |
| Get value of an output parameter filled by a stored procedure.
|
int | dbretlen (DBPROCESS *dbproc, int retnum) |
| Get size of an output parameter filled by a stored procedure.
|
char * | dbretname (DBPROCESS *dbproc, int retnum) |
| Get name of an output parameter filled by a stored procedure.
|
DBINT | dbretstatus (DBPROCESS *dbproc) |
| Fetch status value returned by query or remote procedure call.
|
int | dbrettype (DBPROCESS *dbproc, int retnum) |
| Get datatype of a stored procedure's return parameter.
|
RETCODE | dbrpcinit (DBPROCESS *dbproc, const char rpcname[], DBSMALLINT options) |
| Initialize a remote procedure call.
|
RETCODE | dbrpcparam (DBPROCESS *dbproc, const char paramname[], BYTE status, int type, DBINT maxlen, DBINT datalen, BYTE *value) |
| Add a parameter to a remote procedure call.
|
RETCODE | dbrpcsend (DBPROCESS *dbproc) |
| Execute the procedure and free associated memory.
|
Detailed Description
Functions used with stored procedures.
Especially useful for OUTPUT parameters, because modern Microsoft servers do not return output parameter data to the client unless the procedure was invoked with dbrpcsend().
Function Documentation
Get count of output parameters filled by a stored procedure.
- Parameters:
-
| dbproc | contains all information needed by db-lib to manage communications with the server. |
- Returns:
- How many, possibly zero.
- See also:
BYTE* dbretdata |
( |
DBPROCESS * |
dbproc, |
|
|
int |
retnum | |
|
) |
| | |
int dbretlen |
( |
DBPROCESS * |
dbproc, |
|
|
int |
retnum | |
|
) |
| | |
char* dbretname |
( |
DBPROCESS * |
dbproc, |
|
|
int |
retnum | |
|
) |
| | |
int dbrettype |
( |
DBPROCESS * |
dbproc, |
|
|
int |
retnum | |
|
) |
| | |
Get datatype of a stored procedure's return parameter.
- Parameters:
-
| dbproc | contains all information needed by db-lib to manage communications with the server. |
| retnum | Nth return parameter, between 1 and dbnumrets() . |
- Returns:
- SYB* datatype token, or -1 if retnum is out of range.
- See also:
- dbnextrow(), dbnumrets(), dbprtype(), dbresults(), dbretdata(), dbretlen(), dbretname(), dbrpcinit(), dbrpcparam().
RETCODE dbrpcinit |
( |
DBPROCESS * |
dbproc, |
|
|
const char |
rpcname[], |
|
|
DBSMALLINT |
options | |
|
) |
| | |
Initialize a remote procedure call.
- Parameters:
-
| dbproc | contains all information needed by db-lib to manage communications with the server. |
| rpcname | name of the stored procedure to be run. |
| options | Only supported option would be DBRPCRECOMPILE, which causes the stored procedure to be recompiled before executing. |
- Return values:
-
| SUCCEED | normal. |
| FAIL | on error |
- See also:
- dbrpcparam(), dbrpcsend()
RETCODE dbrpcparam |
( |
DBPROCESS * |
dbproc, |
|
|
const char |
paramname[], |
|
|
BYTE |
status, |
|
|
int |
type, |
|
|
DBINT |
maxlen, |
|
|
DBINT |
datalen, |
|
|
BYTE * |
value | |
|
) |
| | |
Add a parameter to a remote procedure call.
Call between dbrpcinit() and dbrpcsend()
- Parameters:
-
| dbproc | contains all information needed by db-lib to manage communications with the server. |
| paramname | literal name of the parameter, according to the stored procedure (starts with '@'). Optional. If not used, parameters will be passed in order instead of by name. |
| status | must be DBRPCRETURN, if this parameter is a return parameter, else 0. |
| type | datatype of the value parameter e.g., SYBINT4, SYBCHAR. |
| maxlen | Maximum output size of the parameter's value to be returned by the stored procedure, usually the size of your host variable. Fixed-length datatypes take -1 (NULL or not). Non-OUTPUT parameters also use -1. Use 0 to send a NULL value for a variable length datatype. |
| datalen | For variable-length datatypes, the byte size of the data to be sent, exclusive of any null terminator. For fixed-length datatypes use -1. To send a NULL value, use 0. |
| value | Address of your host variable. |
- Return values:
-
| SUCCEED | normal. |
| FAIL | on error |
- See also:
- dbrpcinit(), dbrpcsend()
Execute the procedure and free associated memory.
- Parameters:
-
| dbproc | contains all information needed by db-lib to manage communications with the server. |
- Return values:
-
| SUCCEED | normal. |
| FAIL | on error |
- See also:
- dbrpcinit(), dbrpcparam()