Tôi đang phát triển một công cụ xử lý các bộ phận (điện). Các phần có thể được tạo, xem, sửa đổi, xóa, nhóm và vv ...
Để làm cho câu hỏi này hữu ích cho khách truy cập trong tương lai, tôi muốn giữ câu hỏi này phổ biến vì việc quản lý các bộ phận trong DB là rất phổ biến cho dù bộ phận nào trong DB (CD, xe hơi, thực phẩm, sinh viên, ...).
Tôi đang nghĩ về 3 thiết kế DB khác nhau:
Sử dụng một bảng phần và các bảng dẫn xuất cho các thuộc tính phần chuyên biệt.
Parts (id, part_type_id, name) PartTypes (id, name) Wires (id, part_id, lenght, diameter, material) Contacts (id, part_id, description, picture)
Chỉ sử dụng bảng phần chuyên ngành.
Wires (id, name, lenght, diameter, material) Contacts (id, name, description, picture)
Sử dụng bảng Part-, PartTypes-, ValueTypes- và PartValues có chứa tất cả các giá trị.
PartTypes (id, name) ValueTypes (id, part_type_id, name) Parts (id, part_type_id, name) PartValues (part_id, value_type_id, value)
Cái nào thích hơn và tại sao? Hoặc có một cái tốt hơn?
Tôi quan tâm đến các truy vấn DB. Tôi không muốn các truy vấn trở nên quá chậm hoặc phức tạp.
Cập nhật
Số lượng các loại trong DB được đưa ra khá nhiều và tĩnh vì chúng dựa trên tiêu chuẩn quốc tế và sẽ được tăng cường hiếm khi.