Sqlserver
 sql >> Base de données >  >> RDS >> Sqlserver

ALTER TABLE sur colonne dépendante

Je pense que vous devrez d'abord supprimer les contraintes de clé étrangère. Ensuite, mettez à jour toutes les tables appropriées et remappez-les telles qu'elles étaient.

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

Cependant, à moins que la mémoire ne soit un très gros problème, je garderais l'identité en tant qu'INT. À moins que vous ne soyez sûr à 100 % que vos clés ne dépasseront jamais les contraintes TINYINT. Juste un mot d'avertissement :)