Những gì bạn đang mô tả là mô hình thực thể-thuộc tính-giá trị (EAV). Đây là một cách rất kém để thiết kế một mô hình dữ liệu.
Mặc dù mô hình dữ liệu khá linh hoạt, nhưng việc truy vấn một mô hình dữ liệu như vậy là khá phức tạp. Bạn thường xuyên phải tự tham gia một bảng n
lần nếu bạn muốn chọn hoặc lọc trên n
các thuộc tính khác nhau. Điều đó trở nên chậm hơn khá chậm và trở nên khá khó để tối ưu hóa tương đối nhanh chóng.
Thêm vào đó, bạn thường kết thúc việc xây dựng nhiều chức năng mà cơ sở dữ liệu hoặc ORM của bạn sẽ cung cấp.