Tôi tin rằng bạn sẽ phải loại bỏ các ràng buộc khóa ngoại trước. Sau đó, cập nhật tất cả các bảng thích hợp và sửa lại chúng như cũ.
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
Tuy nhiên, trừ khi bộ nhớ là một vấn đề thực sự lớn, tôi sẽ giữ danh tính là INT. Trừ khi bạn khẳng định 100% rằng chìa khóa của bạn sẽ không bao giờ vượt qua giới hạn của TINYINT. Chỉ là một lời cảnh báo :)