MySQL veritabanı orginization ve PHP seçin

2 Cevap php

Ben bir MySQL veritabanı kuruyorum ve PHP ile sorgulama olacaktır. Birden çok tabloya bilgi kırmaya ve her tablo sorguları seçerim daha iyidir; ya da tek bir tabloda tüm öğeleri koymak ve tek bir seçme sorgusu yapmak daha iyidir?

Örneğin:

Bu kadar 7 arabalar hakkında bilgi yapacak; Yaklaşık 50 sütun ya da onların olacak demek ki.

Table_design 1
----------------------
table_all
    username
    car1_make
    car1_model
    car1_year
    car1_condition
    car1_tires
    car1_color
    car2_make
    car2_model
    car2_year
    car2_condition
    car2_tires
    car2_color
----------------------

Table_design 2
----------------------
table_1
    username
    car1_make
    car1_model
    car1_year
    car1_condition
    car1_tires
    car1_color

table_2
    username
    car2_make
    car2_model
    car2_year
    car2_condition
    car2_tires
    car2_color
----------------------

2 Cevap

Üç tablo. Bu şekilde size bir araba ekleyebileceğiniz bilgi miktarı sınırlı değil. Ve bir kullanıcı erişebilir araba sayısıyla sınırlı değil.

Hiç kullanıcı bir tablo gerekiyorsa, users tablosunu sorgulamak. Hiç araba bir envanter gerekiyorsa, cars tablosunu sorgulamak. Hiç her kullanıcıları ile ilişkili olan araba bilmeniz gerekiyorsa, userscars sorgulayabilirsiniz.

Bkz Database Normalization.

  • users
    • Kullanıcı Kimliği
    • Kullanıcı Adı
    • Kullanıcı Soyad
  • cars
    • Araç Kimliği
    • Araç Marka
    • Araç Modeli
  • usercars
    • Kullanıcı Kimliği
    • Araç Kimliği

Yaptığı tablo yapısı, pek-çok olsa, birden çok kişi aynı araba sahibi olabilir sürece Jonathan ne dedi, bu gereği yoktur.

* users
      o User ID
      o User First Name
      o User Last Name
* cars
      o Car ID
      o User ID
      o Car Make
      o Car Model

daha mantıklı ve sorgulamak daha kolaydır.