Adaptive Server performs in-place updates whenever possible.
When Adaptive Server performs an in-place update, subsequent rows on the page are not moved; the row IDs remain the same and the pointers in the row offset table are not changed.
For an in-place update, the following requirements must be met:
The row being changed cannot change its length.
The column being updated cannot be the key, or part of the key, of a clustered index on an allpages-locked table. Because the rows in a clustered index on an allpages-locked table are stored in key order, a change to the key almost always means that the row location is changed.
One or more indexes must be unique or must allow duplicates.
The update statement satisfies the conditions listed in “Restrictions on update modes through joins”.
The affected columns are not used for referential integrity.
There cannot be a trigger on the column.
The table cannot be replicated (via Replication Server).
An in-place update is the fastest type of update because it makes a single change to the data page. It changes all affected index entries by deleting the old index rows and inserting the new index row. In-place updates affect only indexes whose keys are changed by the update, since the page and row locations are not changed.