[]

Veritabanı tasarımı ile ilgili bir soru, fikir alışverişi.

Diyelim ki emlak ile alakalı bir veritabanı oluşturuyoruz.
şehir tablosu, ilçe tablosu, semt tablosu, gayrimenkul tablosu(arsa, daire, villa vesaire) gibi tablolarımız mevcut, diğer tabloları yazmadım çünkü benim kafamı kurcalayan gayrimenkul tablosu ile alakalı.

ve diyelim ki tıklanan bir ilanın detay sayfasına gelindiğinde,
Oda sayısı: 3+1
Bina yaşı: 5+
Oturma durumu: boşta

ya da
Arsa tipi: bilmemne
Kullanım şekli: zeytinlik
vs..

şeklinde gayrimenkul tablsoundaki tipe göre farklı özellikleri ekrana bastırmak istiyorum.

Şimdi bu durumda, bir ozellik tablosu acıp onun icine mesela:

ozellik
-------
id
gayrimenkulId (foreign)
odaSayisi(nullable)
binaYasi(nullable)
arsaTipi(nullable)
vs..


şeklinde her gayrimenkul tipi için özellikleri tek bir tabloda mı tutmak gerekir yoksa

her bir gayrimenkul tipi icin ozellkleri ayrı tabloda mı tutmak gerekir. bir de sayfaya bastırırken
koşul mu kullanacağız, eğer gayrimenkul tipi 1(daire) ise listele( bina yasi, oda sayisi) else 2(arsa) listele (arsa tipi, kullanim amaci) vs...
yoksa baska bir tabloda özelliklerin isimlerini tutup da query çalıştırıldığında gelen bilgileri şarta almadan direk ekrana mı bastırmak daha mantıklı olur.

szin fikirleriniz nedir?

 
gayri menkuller master ana tablo olur,
onlara ait özellikler hareket olur , hareket tablosunun alanları oda binasayısı yerine numerik alfanumerik str_spec ,int_spec,chr_spec,
bu hareket tablosunda alfa-numerik alanda(chr_spec) kısımda arsatipni ->masterda arsa ile bağlıysa,daire ile bağlıysa eşyalı-eşyasız tutabilirsin,
arsa da boyut 10x10 ken evde 3+1 mesela aynı alana koyabilirsin, la yanında olsam oluşturur annatırdım kusura kalma bu saatte bu kadan, ha bu dooru demiom, ihtiyaca göre belki çok hantal bi yapı. fikir sadece kal saalıcakla.
  • victim35  (25.11.13 22:13:23) 
en azından master, hareket diye iki terim öğrendim sayende. onları bir araştırayım neymiş ne değilmiş? :S


  • sahipsiz  (25.11.13 22:27:48) 
baba umarım şakadır, umarım, bilionda beenmemezlik ironisi yaptıysan üzülürüm.


  • victim35  (25.11.13 22:59:13) 
ozellik diye ayri bir tabloya gerek yok bence. her bir ozellik icin bir tablo tutabilirsin, mesela oda_sayisi, bina_yasi, isitma_sistemi vs. bunlarin da herbirinin primary_key'i ve degeri olur.

isitma_sistemi icin;

id deger
--- -----
1
  • nawres  (25.11.13 23:04:37) 
@victim35 ciddiyim
@nawres anlayamadım, her bir özellik için bir tablo mu?

  • sahipsiz  (25.11.13 23:15:12) 
aloo 2 tablodan fazla tablo kullanırsan hakkımı helal etmem, nawres benden yola çıkıp öle her biri için ayrı tablo diyomuşum gibi anladı, yoo dostum yooo, onlar tablodaki alanlar.


  • victim35  (25.11.13 23:17:02) 
hmmm


  • sahipsiz  (25.11.13 23:18:33) 
victim35 biraz yüzeysel bakmış galiba olaya. Uygulamasını da kendin yazıyorsan olabilir. İstersen tüm projeyi tek tabloya sığdır. Ama sadece veri tabanından sorumlu olduğun bir projeyse açıp Elmasri reyize bi bakmak lazım.

Özellikler birbirinden bu kadar bağımsızsa ayrı tablo yapmak daha uygun olur. Bi sürü null değeri güzel bir tasarım olmaz. (gayrimenkulun türü ev olmasına rağmen oda sayısı boş kalabilir.)

Alakasız birimleri de (metrekare ile oda sayısı gibi) aynı alanda tutmaya hiç gerek yok.
  • nickini vermek istemeyen uye  (26.11.13 00:51:59 ~ 00:52:21) 
1
buraya yazılanların hakları Sir Anthony Hopkins'e aittir.
yazan eden compumaster, ilgilenen eden fader
modere edenler angelus, Artibir, aychovsky, baba jo, basond, compumaster, deckard, duyulmasi gerektigi kadar, fader, fraise, groove salad, kahvegibi, kaymaktutmayansicaksut, kibritsuyu, monstro, pandispanya, robin, ron dennis
bu sitede yazılanların hiçbiri doğru değildir. site içeriği küçükler için sakıncalı olabilir. yazılardan yazarları sorumludur. kaynak göstermeden alıntılanamaz. devlet tarafından atanmış bir kurumun internet üzerinde kimin hangi bilgiye ulaşıp ulaşamayacağına karar vermesi insan haklarına aykırıdır. web siteleri kullanıcıların istekleri doğrultusunda bağlandıkları yerlerdir. kullanıcılar isterlerse bir web sitesine bağlanmayabilirler. bu güçleri ve imkanları mevcuttur. bir kullanıcı bir siteye bağlanmak istiyorsa bu onun tercihi ve hakkıdır. bağlanmak istemiyorsa bu yine onun tercihi ve hakkıdır. halkın kendisine hizmet etmesi için görevlendirdiği kurumlar hadlerini aşıp halka neye ulaşıp ulaşmayacağını bilmeyen cahil cühela muamelesi edemezler. ebeveynlerin çocuklarını sakıncalı içeriklerden koruması için çok sayıda bedava ve ücretli yazılım mevcuttur. bu yazılımlar bir web tarayıcısını kullanmaktan daha karmaşık teknik bilgi gerektirmemektedir. devletin milletini küçük düşürmesi ve ebleh yerine koyması yasaktır. Skimlinks ile linkler üzerinden yönlendirme payı alınmaktadır.