Sqlserver
 sql >> Base de Dados >  >> RDS >> Sqlserver

ALTER TABLE na coluna dependente


Acredito que você terá que descartar as restrições de chave estrangeira primeiro. Em seguida, atualize todas as tabelas apropriadas e mapeie-as novamente como estavam.
ALTER TABLE [dbo.Details_tbl] DROP CONSTRAINT [FK_Details_tbl_User_tbl];
-- Perform more appropriate alters
ALTER TABLE [dbo.Details_tbl] ADD FOREIGN KEY (FK_Details_tbl_User_tbl) 
    REFERENCES User_tbl(appId);
-- Perform all appropriate alters to bring the key constraints back

No entanto, a menos que a memória seja um problema realmente grande, eu manteria a identidade como INT. A menos que você tenha 100% de certeza de que suas chaves nunca ultrapassarão as restrições do TINYINT. Apenas uma palavra de cautela :)