SourcePro C++ 12.0 |
SourcePro® C++ API Reference Guide |
SourcePro C++ Documentation Home |
Provides a mechanism for making direct calls to the Sybase Open Client Client-Library API and some methods for setting access module-specific properties. More...
#include <rw/db/ctlibsrc/ctlsysh.h>
Public Member Functions | |
CS_CONTEXT * | cscontext () const |
CS_CONNECTION * | csconn () const |
bool | logTextUpdates () const |
RWDBStatus | logTextUpdates (bool value) |
long | rowsPerCursorFetch () const |
RWDBStatus | rowsPerCursorFetch (long value) |
Class RWDBSybCtLibSystemHandle provides methods for setting and retrieving options that affect performance. It also contains the CS_CONTEXT
pointer used by the RWDBDatabase, and the CS_CONNECTION
pointer used by the RWDBConnection.
Sybase Client-Library uses the CS_CONTEXT
structure as a parent structure for the application, the CS_CONNECTION
structure as a handle to the server, and the CS_COMMAND
structure for defining and executing commands.
The DB Interface Module uses a single CS_CONTEXT
structure for each RWDBDatabase instance. This structure is allocated when the RWDBDatabase is instantiated, and destroyed when the instance goes out of scope.
The CS_CONNECTION
structure is opened and closed as needed for RWDBConnection instances. Each RWDBConnection corresponds to an open CS_CONNECTION
structure.
Each cursor is associated with a unique CS_COMMAND
structure to facilitate multiple cursors on a single connection.
CS_COMMAND* cscommand()
was removed in the DB Access Module for Sybase. If your application depends on this method, please consult Rogue Wave Support Services for alternate ways to achieve the same results.#include <rw/db/ctlbisrc/ctlsysh.h> RWDBSybCtLibSystemHandle* sys = (RWDBSybCtLibSystemHandle*)myConnection.systemHandle();
This example shows how to make calls directly to the Sybase Open Client by getting the property CS_TEXTLIMIT
that is associated with the CS_CONNECTION
. Note that the application must be compiled with an include path to the Sybase Open Client include files.
#include <rw/db/ctlibsrc/ctlsysh.h> RWDBConnection aConnection = aDb.connection(); RWDBSystemHandle* aHandle = aConnection.systemHandle(); RWDBSybCtLibSystemHandle* ctLibHandle = (RWDBSybCtLibSystemHandle*)aHandle; CS_CONNECTION *csconn = ctLibHandle->csconn(); CS_INT limit, outlen; ct_con_props(csconn, CS_GET, CS_TEXTLIMIT, &limit, CS_UNUSED, &outlen);
CS_CONNECTION * RWDBSybCtLibSystemHandle::csconn | ( | ) | const [inline] |
Returns a pointer to the CS_CONNECTION
structure used for client library calls. Each RWDBConnection corresponds to an open CS_CONNECTION
structure.
CS_CONTEXT * RWDBSybCtLibSystemHandle::cscontext | ( | ) | const [inline] |
Returns a pointer to the CS_CONTEXT
structure used by the RWDBDatabase.
A single CS_CONTEXT
structure is maintained for each RWDBDatabase instance. This structure is allocated when the RWDBDatabase is instantiated, and destroyed when the instance goes out of scope.
RWDBStatus RWDBSybCtLibSystemHandle::logTextUpdates | ( | bool | value | ) | [inline] |
Changes the behavior for logging updates to text
and image
columns, and returns an RWDBStatus indicating whether the operation was successful. Passing a value of false
disables logging updates. The default is true
.
bool RWDBSybCtLibSystemHandle::logTextUpdates | ( | ) | const [inline] |
Returns true
if the client library is to log updates to text
and image
columns. This behavior is enabled by default.
RWDBStatus RWDBSybCtLibSystemHandle::rowsPerCursorFetch | ( | long | value | ) | [inline] |
Sets the number of rows to be fetched for cursor result sets, and returns an RWDBStatus indicating whether the operation was successful.
long RWDBSybCtLibSystemHandle::rowsPerCursorFetch | ( | ) | const [inline] |
Returns the number of rows to be fetched for cursor result sets. The default value is 10.
© Copyright Rogue Wave Software, Inc. All Rights Reserved.
Rogue Wave and SourcePro are registered trademarks of Rogue Wave Software, Inc. in the United States and other countries. All other trademarks are the property of their respective owners.
Contact Rogue Wave about documentation or support issues.