Árvore de páginas

Durante a operação de alteração da estrutura de uma tabela, caso alguma de suas etapas intermediárias não for concluída em função de uma estrutura incompleta ou da corrupção de seus dados, é registrado a mensagem TC_ALTER FAILED on file [<table>]. Table DATA or STRUCTURE should be INVALID or CORRUPTED.

Causa

A causa dessa ocorrência pode ser observada nos logs do TOTVS | DBAccess e comumente está relacionada a alguma restrição implicada pelo uso de viewstriggersstatistics ou qualquer outro recurso que porventura possa impedir a operação.

Observações

  • É uma premissa que a tabela a ser alterada não possua dependências e/ou elementos externos que impeçam uma alteração estrutural.

Muitas vezes os DBAs inserem triggers e statistics diretamente no SGBD. Essas operações são válidas contanto que não alterem o comportamento esperado pela aplicação e regra de negócio, uma vez que as mesmas deverão ser removidas manualmente e reaplicadas após a alteração estrutural estiver completa

Exemplo

No exemplo a seguir a coluna está relacionada a uma statistics e impede a operação de alteração.

04/01/2016 12:52:20 : [BEGINLOG]
Error : 5074 (37000) (RC=-1) - [Microsoft][ODBC SQL Server Driver][SQL Server]The statistics 'CTB_FILORI' is dependent on column 'CTB_FILORI'. ( From tMSSQLConnectionAlterTable_1 )
Thread ID [6096] User [sigasp] IO [5800] Tables [0] MaxTables [1] Comment [] Status [] SP [ ] Traced [No] InTran [No] DBEnv [MSSQL/BASEP12TST] DBThread [(SPID 132)] Started [04/01/2016 12:50:17] LastIO [] IP [192.168.0.202:1245] RCV [62330] SND [184900] TCBuild [20141119] 
ALTER TABLE dbo.CTB010 DROP COLUMN CTB_FILORI
[ENDLOG]
04/01/2016 12:52:20 : [BEGINLOG]
TC_ALTER FAILED on file [CTB010]. Table DATA or STRUCTURE should be INVALID or CORRUPTED. ( From tDBServer::AlterFile )
Thread ID [6096] User [sigasp] IO [5800] Tables [0] MaxTables [1] Comment [] Status [] SP [ ] Traced [No] InTran [No] DBEnv [MSSQL/BASEP12TST] DBThread [(SPID 132)] Started [04/01/2016 12:50:17] LastIO [] IP [192.168.0.202:1245] RCV [62330] SND [184900] TCBuild [20141119]