trước khi trả lời câu hỏi của bạn ... tôi nghĩ rằng user_id không nên nằm trong bảng Tài năng ... ý tưởng chính ở đây là "đối với 1 tài năng, bạn có nhiều người dùng và đối với một người dùng bạn có nhiều tài năng" .. vì vậy mối quan hệ phải là NxN, bạn sẽ cần một bảng trung gian
xem: nhiều đến nhiều
bây giờ
nếu bạn muốn thực hiện một điều gì đó động (thêm hoặc xóa các chương trình con), bạn có thể sử dụng mối quan hệ đệ quy. Đó là một bảng có liên quan đến chính nó
TABLE TALENT
-------------
id PK
label
parent_id PK FK (a foreign key to table Talent)
xem: liên kết đệ quy
nếu bạn đang sử dụng mô hình trước đây, có thể là một cơn ác mộng khi thực hiện các truy vấn, bởi vì bảng Tài năng của bạn hiện là CÂY có thể chứa nhiều cấp .. bạn có thể muốn giới hạn bản thân ở một số cấp nhất định mà bạn muốn trong Tôi đoán hai bảng của Talent là đủ .. như vậy thì các truy vấn của bạn sẽ dễ dàng hơn
khi sử dụng quan hệ đệ quy ... khóa ngoại phải có giá trị rỗng vì các tài năng cấp cao nhất sẽ không có parent_id ...
Chúc may mắn! :)
CHỈNH SỬA: ok .. tôi đã tạo mô hình .. để giải thích nó tốt hơn
Chỉnh sửa Mô hình thứ hai (có hình cây thông Noel =D) Lưu ý rằng mối quan hệ giữa Người mẫu &Tài năng và Diễn viên &Tài năng là mối quan hệ 1x1, có nhiều cách khác nhau để làm điều đó ( cùng một liên kết trên các nhận xét )
để tìm xem người dùng có tài năng hay không .. hãy tham gia ba bảng trên truy vấn =) hy vọng điều này sẽ giúp ích