Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Hàm ý của Supertype và Subtype

Nếu tất cả những gì bạn cần là đính kèm hình ảnh vào người dùng và trang, tôi không chắc hệ thống phân cấp danh mục đầy đủ (hay còn gọi là. "Subclass", "subtype", "kế thừa") sẽ là tối ưu.

Giả sử các trang / người dùng có thể có nhiều hình ảnh và bất kỳ hình ảnh cụ thể nào cũng có thể được đính kèm với nhiều trang / người dùng và giả sử bạn không muốn đính kèm hình ảnh vào hình ảnh, thì mô hình của bạn có thể trông như thế này:

Bạn có thể sử dụng phân cấp danh mục để đạt được kết quả tương tự ...

... nhưng với quá ít lớp con, tôi khuyên bạn nên chống lại nó (do các vấn đề về hiệu suất và khả năng bảo trì tiềm ẩn). Mặt khác, nếu có tiềm năng thêm các lớp con mới trong tương lai, đây thực sự có thể là giải pháp phù hợp (ENTITY_IMAGE sẽ tự động "bao phủ" tất cả các lớp con mới này, vì vậy bạn không cần phải giới thiệu một "liên kết" mới bảng cho từng và mọi người trong số họ).

BTW, có 3 cách chính để triển khai phân cấp danh mục, mỗi phân cấp có một bộ cân bằng riêng.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Truy vấn MySQL - lấy bản ghi dựa trên ngày hiện tại

  2. Tìm kiếm MySQL và thay thế một số văn bản trong một trường

  3. Bạn có thể lập chỉ mục các truy vấn phụ không?

  4. Cập nhật giản đồ Symfony2 Doctrine không thành công

  5. Tìm kiếm do người dùng lọc trong django