PHP ve MySQL ile bir web uygulama geliştiriyorum. Ben bunun içinde (diğer nesnelerle birlikte) çok bir-çok ilişkileri (Adresleri listesi, e-postalar listesi, phonenumbers listesi, vb) sahiptir adında bir varlık, Kullanıcı, var. Bunlar birçok adresleri, e-posta, telefon numaraları (user_link_addresses, user_link_emails, vb) veritabanında kavşak tablosu vasıtasıyla kullanıcıya verilir.
Ben şimdi kullanıcı varlık için etkili bir DAO oluşturmak çalışıyorum, özel yöntemler ($ UserID) ve readAllUsers () readUserById. Ben sql ve DAO desen de bir amatörüm beri Ancak, ben sorun bu doğru DAO oluşturma yaşıyorum.
Ben buna göre bu varlık eşlenebilir bir kez ve daha sonra tüm bilgileri okur bir sorgu için DAO tutmak için ağ verimlilik için önemli olduğunu söylendi. Bu mantıklı, ama ben sorun üreten gerekli her şeyi bilgi ve benim varlık doğru eşlenebilir var one sorgu yaşıyorum.
Sağ şimdi, kullanıcıların aldıktan sonra bir döngü içinde birden fazla sorgu yaparak bu bilgileri alabilirsiniz ... Ben sadece fikrini sevmiyorum (ve ben doğru değil eminim). Değil sadece bu karmaşık bir şey ile ve de doğru eşleştirilmesi gerekir - Ayrıca, ben nasıl yapılacağını biliyorum kavşak tablo ile katıldı.
TABLE NAMES AND FIELDS
TABLE: user FIELDS: user_id, username, password
TABLE: address FIELDS: address_id, street, city, state, zip_code, type
TABLE: email FIELDS: email_id, email, type
TABLE: phone_number FIELDS: phone_number_id, area_code, phone_number, type
- DERNEKLER İÇİN AYRIMI TABLOLAR -
TABLE: user_link_address FIELDS: user_id, address_id
TABLE: user_link_email FIELDS: user_id, email_id
TABLE: user_link_phone_number FIELDS: user_id, phone_number_id
Her neyse, bütün yardım büyük beğeni topluyor,
Steve