Deleting from MDC and ITC tables

When a record is deleted in an MDC or ITC table, if it is not the last record in the block, the database manager merely deletes the record and removes its RID from any record-based indexes defined on the table.

When a delete removes the last record in a block, the database manager frees the block. The block is freed by changing the IN_USE status bit and removing the BID of the block from all block indexes. If there are record-based indexes as well, the RID is removed from them.

Note: Therefore, block index entries are removed once per entire block and only if the block is emptied, instead of once per deleted row in a record-based index.