SE_stream_set_rowlocking

Sets the row locking environment for a stream

Usage syntax

LONG SE_stream_set_rowlocking
(SE_STREAM stream,
LONG rowlock_action);

Parameters
stream The stream handle
rowlock_action The row ID
Description

SE_stream_set_rowlocking sets the row locking environment for a stream. The row locking environment remains in effect until the stream is closed with reset TRUE or the stream is freed. The row lock types and their descriptions are as follows:

SE_ROWLOCKING_LOCK_ON_QUERY

Rows selected by SE_stream_get_row, SE_stream_query, or SE_stream_query_logfile are locked. If any of the rows are already locked, the entire operation fails. Rows already locked by the caller will not cause the operation to fail. At the start of the query, the lock table is locked with a DBMS lock. When the query finishes, a commit is performed to preserve the row locks.

SE_ROWLOCKING_LOCK_ON_INSERT

New rows inserted with SE_stream_insert_table are locked.

SE_ROWLOCKING_LOCK_ON_UPDATE

Rows updated with SE_stream_set_row, SE_stream_update_row or SE_stream_update_table are locked.

SE_ROWLOCKING_UNLOCK_ON_QUERY

Rows selected by SE_stream_get_row, SE_stream_query, or SE_stream_query_logfile have locks by the current user removed. When the query finishes, a commit is performed to preserve the row lock changes.

SE_ROWLOCKING_UNLOCK_ON_UPDATE

Rows updated with SE_stream_set_row, SE_stream_update_row or SE_stream_update_table have locks by the current user removed.

SE_ROWLOCKING_FILTER_MY_LOCKS

Only rows locked by the current user are returned on query.

SE_ROWLOCKING_FILTER_OTHER_LOCKS

Only rows locked by other users are returned on query.

SE_ROWLOCKING_FILTER_UNLOCKED

Only unlocked rows are returned.

SE_ROWLOCKING_LOCK_ONLY

Query operations lock but do not return rows unless SE_stream_set_logfile is set.

Returns

SE_SUCCESS
SE_INVALID_PARAM_VALUE

SE_INVALID_POINTER

SE_INVALID_STREAM

SE_NET_FAILURE

SE_NO_PERMISSIONS

SE_SDE_NOT_STARTED