Hiện tại, tôi có một categories
bảng có 2 cột - category VARCHAR(50) NOT NULL PRIMARY KEY
và parent VARCHAR(50)
. Các parent
cột là khóa ngoại (FK) đến category
cột.
Đây dường như là cách tiếp cận rõ ràng nhất. Tuy nhiên, tiếng chuông báo thức đang vang lên trong đầu tôi vì tôi đang sử dụng một VARCHAR
cột cho khóa chính, điều này có thể làm chậm hoạt động khi truy vấn bảng.
Tôi có thể giới thiệu một cột thứ ba được gọi cat_id INT AUTO_INCREMENT
và đặt đó là PK, nhưng nó sẽ giới thiệu một cột mới không có ý nghĩa.
Ngoài cái nào sẽ nhanh hơn, cần xem xét những gì khác?
NB Tôi dự đoán sẽ có tối đa 1000 danh mục hoặc vì vậy số lượng hàng không quá cao. Tuy nhiên, categories
cột PK sẽ là cột tham chiếu cho nhiều khóa ngoại, trong các bảng khác.
Tôi có nên sử dụng tên người dùng (duy nhất) làm PK không?