Ne bu proje için en iyi SQL düzeni var?

4 Cevap php

i insanlar fotoğraf / video / ses verebilmeleri bir php uygulaması yapmak istiyorum

Şimdi, her şey bir rekor bu şekilde dosya Infos SQL veritabanına eklenecektir yüklendi:

Photos_table : File_Name | Picture_Type | Picture_Width | Picture_height

Videos_table : File_Name | Duration | Codec

Sounds_table : File_Name | Bitrate | Duration | Codec

App olacak görüntüler her türlü tüm son öğeler. Önceki düzeni, ya da böyle BİR tablodaki tüm infos yapma gibi yapmak iyidir:

File_Name | Picture_Type | Picture_Width | Picture_height | Duration | Codec | Bitrate

Ben infos toplamak için hızlı yolu ne demek, ben sadece ilk düzeni son olandan daha organize olduğunu düşünüyorum.

Teşekkürler

4 Cevap

Kesinlikle hepsi bir arada. Eğer ortam yüklüyorsanız sonra tüm medya bir tablo oluşturmak olacaktır:

Media_table: ID | MediaPath | ETC

Photos_table : MediaID | Picture_Type | Picture_Width | Picture_height

Videos_table : MediaID | Duration | Codec

Sounds_table : MediaID | Bitrate | Duration | Codec

database normalization içine bak.

Büyük bir performans farkı olmayacak. Ancak, ikinci yöntemi kullanarak veritabanı kötü bir uygulama olarak kabul edilir biraz denormalize yapar.

İlk düzenini kullanın - Her tablo farklı bilgilerin farklı bir türü temsil eder.

Eğer ikinci düzeni olsaydı, sizin tabloya null sürü ile sona erecekti.

Çoğu DB uzmanları daha normalized olduğu gibi, ilk bir ile gitmek istiyorum.

Durilai tarafından cevap iyi olmasına rağmen her nasılsa onunla kabul etmiyorsanız, siz de üç ayrı tablo tutmak ve iki yoldan biri kendi sonuçlarını birleştirebilirsiniz:

  • Bir BİRLİĞİ ile 1 sorgu.
  • PHP ile sonradan birleştirilmiş 3 sorgular.