1-yes, 2-yes, 3-yes, 4-yes.
Ngoài ra ...
- Bạn có thực sự cần
BIGINTkhông ? Sẽ không có 4 tỷ giá trị trongINT UNSIGNEDđủ? (Và tiết kiệm một nửa dung lượng.) Có lẽ làidPK của một số bảng khác là gì? Nếu vậy, bảng đó cũng cần thay đổi. - Có thể
stateđược bình thường hóa? Hoặc biến thànhENUM? Một lần nữa tiết kiệm dung lượng.
Mục 3 là tệ hơn được đề cập vì cần phải khóa trên hai chìa khóa duy nhất.