MySQL veri modelleme

2 Cevap php

Ben bir MySQL veritabanında temsil etmek zorunda verilerle bu mevcut sorunu var:

Ben farklı veri ile ürünlerin farklı desteklemek zorunda, her biri, örneğin, araba vb, otel odaları, kitap, benim uygulama için vs adı, açıklama, fiyat, gibi, her bir ürün için ortak bazı veriler var

Yani araba, hotel_rooms, kitaplar ve ne olursa olsun 1:1 ilişki bu ürün tabloya başvuran tablolar ile, ortak verilerle, bir çarpım tablosunu sahip düşünüyorum.

Sorun bu yüzden çarpım tablosunu sorgulayabilir ve bu sorgu ile "automagically" ekstra veri almak, bir ana tablo olarak çarpım tablosunu yaşıyor, bu yüzden uygulamanın daha "genel" yapabilirsiniz.

Herhangi bir fikir bu nasıl yapılabilir? Ben birkaç fikir var, ama onlar bunu yapmanın en iyi yoludur ve bu sorun bence daha sık olabilir zaman ben kirli kesmek için gitmek istemiyorum sanmıyorum.

Kullanımı: PHP + Zend Framework + MySQL.

2 Cevap

Bir baz nesne var, o taban nesneyi alt sınıf polimorfizm kullanın. Temel nesne depolar (1 tablosunda) tüm paylaşılan veri .. Sonra her alt sınıfın kendine has özellikleri var olan ve baz tabloya key'd ayrı bir tabloda onları kaynaklari. Lutfen kendi benzersiz / farklı veri yükleme gibi yükleme, hem de kendi üst nesneden ortak veri alt sınıfları yetenekli olun.