same select

Disable the use of Sybase cursors and use the same select mechanism instead.

Syntax

USYS$SYB_PARAMS { = } same select

Description

Note:  Use this option only if you experience poor performance when multiple database sessions are busy with Sybase cursors.

Cursors are the only way Sybase provides to keep multiple result sets, so using the same select option means that this is no longer possible. Instead, the same select mechanism is used to retrieve data. This means that for each entity and each step in the hitlist, the same select statement that was used to retrieve the first results must be repeated.

If you work with just one entity, the select query never needs to be repeated, but if a retrieve on a second entity has caused the select query on the first entity to be canceled, and a new hitstep of the first entity must be retrieved, the select query is repeated for each step in the hitlist.

For example, a component has two entities. The first 10 records (assuming the default step size) of the first entity are retrieved. To get the first 10 records of the second entity, the first request is canceled, the remaining results for the first entity are discarded, and the same select request is issued for the second entity.

This is obviously inefficient and can degrade performance. To partially compensate for this, use the step size and rowcount options to fine-tune Uniface and Sybase performance.

If rowcount is set, the select statement is repeated after the number of hits specified by rowcount has been retrieved.

Related Topics