Error 4956



Message text

Cannot alter table if level 0 scans are active.


Isolation level 0 allows transactions to read uncommitted data (“dirty reads”). You can specify isolation level 0 for your queries using the at isolation syntax or you can specify level 0 for your session as part of the transaction isolation level option of the set command. Adaptive Server's default transaction isolation level is 1.

Since alter table allows you to modify a table’s schema, it would not be safe to allow the use of alter table when level 0 scans are active for that table. Error 4956 is raised if you enter an alter table command when the table in your command is currently being used for reading uncommitted data.


Try your alter table command again later, after the process that is using level 0 scans on the table is no longer active.

Additional information

Refer to the Transact-SQL User's Guide for information about selecting an isolation mode for either a query or for your session.

Versions in which this error is raised

All versions