[linux-programlama] Re: veritabani tasarimi (konu disi)

---------

From: Yilmaz Cankaya (yilmaz.cankaya@ulugbey.de)
Date: Wed 10 Mar 2004 - 14:59:09 EST

  • Next message: Devrim GUNDUZ: "[linux-programlama] PostgreSQL 7.4.2 duyuruldu."

    Meselenin teorik tabanli cozumu icin asagidaki secenegi de goz onunde
    bulundurabilirsiniz:
    tablo1
    hizmetler_kodlari ve bu tabloya eklenecek olan boolean bir alandan ( ornegin
    dort_hizmet oldugunu varsayalim) olusacak.. Bu boolean tanimli alanda dort
    hizmet true olarak secilecek (bu dort hizmet sizin sectiginiz alanlar olacak)
    fakat diger hizmetlerin boolean alan verileri false olarak secilecek. Bu
    mumkun cunku secilen bu dort hizmetin diger hizmetler ile ayni anda kullanma
    acisindan olustudugu kesisim kumesi bos kume..
    Daha sonra kodunda
    while(row){
            $if_dort_hizmet=$row("dort_hizmet");
            if($if_dort_hizmet==true)
                    //dort_hizmet_secildi
            }elseif($if_dort_hizmet==false)
                    //dort_hizmet disindaki hizmetler secildi
            }else{
                    //veritabani olusturmada hata var..
             }
    }
    seklinde bir kod kullanarak gerekli form seklini belirleyebilirsin.
    Diger bir yontem ise bu dort hizmeti farkli bir tabloda tutmak ve kodunda true
    false yerine tablo1 daki herhangi bir hizmetin tablo2 da bulunup
    bulunmadigini kontrol etmek..
    Kolay gelsin.
    On Wednesday 10 March 2004 12:12, Fuat Altun wrote:
    > Tamamiyle iliskisel bi veri tabani :)
    >
    >
    > -----Original Message-----
    > From: Gurkan Aslan [mailto:gurkan@iaslan.com]=20
    > Sent: Wednesday, March 10, 2004 12:25 PM
    > To: linux-programlama@www.linux.org.tr
    > Subject: [linux-programlama] Re: veritabani tasarimi (konu disi)
    >
    > On Wed, 2004-03-10 at 10:52, Fuat Altun wrote:
    > > =3DD6ncelikle tesekkurler,
    > > Salih bey'in maili okunamiyor...
    > > Tekrar gonderebilirse sevinirim.
    > > Gurkan bey..
    > > Alanim zaten auto-increment.
    > > Fakat benim otomatik verilen kodlarin datasina bakip kaynak koda =3D
    > > eklemem
    > > canimi sikiyor :)
    > >=20
    > > 4 tane kod ozel anlami olacak..
    > > cunku diger kodlarda (yaklasik 96 kod icin) ayni veri giris ekraninin
    > > cagiracagim.
    > > Fakat bu dort tanesi icin farkli farkli veri girisi ekranlarini =3D
    > > cagiracagim
    > > Yani if bloklarinda yapacagim islem bu.
    > >=20
    >
    > Hmmm s=F6yledikleriniz kafamda bir=FEeyler canland=FDrd=FD ama =
    > olabiletisi i=E7in
    > =FEunu soraca=F0=FDm: Nesne Tabanl=FD program m=FD yaz=FDyorsunuz? =
    > Veritaban=FDn=FDz
    > RDBMS destekli bir veritaban=FD m=FD?
    >
    > > Saygilar
    > >=20
    > >=20
    > >=20
    > > -----Original Message-----
    > > From: Gurkan Aslan [mailto:gurkan@iaslan.com]=3D20
    > > Sent: Wednesday, March 10, 2004 10:34 AM
    > > To: linux-programlama@www.linux.org.tr
    > > Subject: [linux-programlama] Re: veritabani tasarimi (konu disi)
    > >=20
    > >
    > > On Wed, 2004-03-10 at 10:02, Fuat Altun wrote:
    > > > Merhabalar,
    > > > =3D20
    > >
    > >=20
    > > Merhaba
    > >=20
    > >
    > > >=3D20
    > > > Tablo1 isimli tablomda hizmet_kodlari adinda bir alanim var. =
    >
    > Burada
    >
    > > > yaklasik 100 adet hizmet turu kodu var. (temizlik hizmeti, yemek =
    >
    > =3D
    >
    > > hizmeti,
    > >
    > > > bakicilik hizmeti vs.)
    > > >=3D20
    > > > Sorunuma gelince;
    > > >=3D20
    > > > Bu hizmet_kodlarindan bazilarini ozel olarak kod icinde kullanmam =
    >
    > =3D
    >
    > > gerek.
    > >
    > > > Fakat ben bunun yanlis bir yol oldugunu dusunuyorum. Yani veriyi =
    >
    > =3D
    >
    > > kaynak
    > > kod
    > >
    > > > icinde barindirmak bana hatali geliyor.
    > > >=3D20
    > > > sizce bu yaklasimim dogrumu? Cunku kodlar her zaman degisebilir. =
    >
    > Yani
    >
    > > bunlar
    > >
    > > > il_kodundaki gibi plaka no degil.
    > > >=3D20
    > > > Kisaca,
    > > >=3D20
    > > > =3D20
    > > >=3D20
    > > > if (hizmet_kodu=3D3D=3D3D56) //cicek bakimi hizmeti
    > > >=3D20
    > > > {
    > > >=3D20
    > > > ..........
    > > >=3D20
    > > > ..........
    > > >=3D20
    > > > }
    > > >=3D20
    > > > =3D20
    > > >=3D20
    > > > seklinde olursa dogru olmaz diye dusunuyorum.
    > > >=3D20
    > > > =3D20
    > >
    > >=20
    > > Do=3DF0ru d=3DFC=3DFE=3DFCn=3DFCyorsun.. Yani bu =3DFEekilde =
    >
    > olmas=3DFD do=3DF0ru bir =3D
    >
    > > yakla=3DFE=3DFDm de=3DF0il...
    > > Daha dinamik bir yakla=3DFE=3DFDm sergilemek gerek...
    > >=20
    > >
    > > >=3D20
    > > > Bunun yerine bu ozel kodlar icin baska boolean degiskenler =
    >
    > tanimlamak
    >
    > > dogru
    > >
    > > > bir yontem olabilirmi?
    > > >=3D20
    > >
    > >=20
    > > Elbette bu da bir y=3DF6ntem...
    > >=20
    > >
    > > > =3D20
    > > >=3D20
    > > > Yani tablo1 tablosunun icinde
    > > > bebek_hizmetimi,bakicilik_hizmetimi,ev_hizmetimi gibi alanlar =3D
    > >
    > > tanimlayip
    > >
    > > >=3D20
    > > > Kaynak kod icinde su sekilde kullanmak daha dogru olabilirmi?
    > > >=3D20
    > > > =3D20
    > > >=3D20
    > > > if (cicek_hizmetimi=3D3D=3D3Dtrue) //cicek bakimi hizmeti
    > > >=3D20
    > > > {
    > > >=3D20
    > > > ..........
    > > >=3D20
    > > > ..........
    > > >=3D20
    > > > }
    > > >=3D20
    > > > bu durumda fazladan 3-4 tane daha boolean degisken tanimlamam =3D
    > >
    > > gerekecek
    > >
    > > > tabii.
    > > >=3D20
    > >
    > >=20
    > >
    > > :) =3DDDyi gidiyorsunuz... Belki de biraz daha d=3DFC=3DFE=3DFCnseniz =
    >
    > maili =3D
    >
    > > silip sorunu
    > > =3DE7=3DF6zm=3DFC=3DFE olacakt=3DFDn=3DFDz...
    > >=20
    > > Burada o if bloklar=3DFDn=3DFDn i=3DE7erisine yazaca=3DF0=3DFDn=3DFDz =
    >
    > kod =3DE7ok =3D
    >
    > > =3DF6nemli =3DE7=3DFCnk=3DFC ona
    > > g=3DF6re alternatif bir =3DE7ok =3DF6zel sonu=3DE7 =
    >
    > =3DFCretebilirsiniz.=3D20
    >
    > >=20
    > >=20
    > >=20
    > > Alternatif bir =3DE7ok =3DE7=3DF6z=3DFCm var ancak bunlar=3DFD =
    >
    > s=3DFDralay=3DFDp =3D
    >
    > > sazanl=3DFDk yapmadan
    > > =3DF6nce benim size sormak istedi=3DF0im birka=3DE7 =3DFEey var...
    > >=20
    > > 1-) "Kod de=3DF0i=3DFEirse" diye kayg=3DFDland=3DFD=3DF0=3DFDn=3DFDz =
    >
    > olay=3DFDn =3D
    >
    > > =3DE7=3DF6z=3DFCm=3DFC kullan=3DFDc=3DFDn=3DFDn
    > > verece=3DF0i kodlara g=3DFCvenmeden auto increment bir kod =
    >
    > =3DFCretmek ve
    >
    > > dolay=3DFDs=3DFDyla da kendi =3DFCretti=3DF0iniz, =
    >
    > de=3DF0i=3DFEmeyece=3DF0ine emin =3D
    >
    > > oldu=3DF0unuz
    > > kodlarla =3DE7al=3DFD=3DFEmakt=3DFDr ancak; peki ya kod de=3DF0il de =
    >
    > o kodun =3D
    >
    > > kar=3DFE=3DFDl=3DFD=3DF0=3DFDndaki
    > > isim de=3DF0i=3DFEirse? Yani adam 30 numaral=3DFD =3DC7i=3DE7ek =
    >
    > Bak=3DFDm=3DFD =3D
    >
    > > Hizmeti'nin koduna
    > > dokunmay=3DFDp ad=3DFDn=3DFD "Iv=3DFDr Z=3DFDv=3DFDr Hizmeti" olarak =
    >
    > =3D
    >
    > > de=3DF0i=3DFEtirirse? bu durumda
    > > sizin yazd=3DFD=3DF0=3DFDn=3DFDz kodlardan =3DC7i=3DE7ek =
    >
    > Bak=3DFDm=3DFD hizmeti i=3DE7in =3D
    >
    > > =3DE7al=3DFD=3DFEmas=3DFD gereken
    > > kod bam ba=3DFEka bir hizmet i=3DE7in alakas=3DFDz i=3DFEler =
    >
    > yapm=3DFD=3DFE olmaz =3D
    >
    > > m=3DFD?
    > >=20
    > > 2-) E=3DF0er kodunuzla ve tablolardaki de=3DF0erlerle =
    >
    > ba=3DF0lant=3DFDl=3DFD =3D
    >
    > > i=3DFEler olacaksa
    > > ve dinamik hizmet tan=3DFDmlamas=3DFD olacaksa, kodunu istedi=3DF0i =
    >
    > kadar
    >
    > > de=3DF0i=3DFEtirsin ama kullan=3DFDc=3DFDn=3DFDn ad=3DFDn=3DFD ve =
    >
    > s=3DFDras=3DFDn=3DFD =3D
    >
    > > de=3DF0i=3DFEtiremeyece=3DF0i bir
    > > yakla=3DFE=3DFDm program=3DFDn=3DFDz ad=3DFDna bir=3DFEeylere engel =
    >
    > olur mu? (Engel =3D
    >
    > > olmaz
    > > diyorsan=3DFDz zaten auto increment olarak =
    >
    > a=3DE7=3DFDklad=3DFD=3DF0=3DFDm =3D
    >
    > > =3DE7=3DF6z=3DFCm i=3DFEinizi g=3DF6r=3DFCr)
    > >=20
    > > 3-) Veya "ayr=3DFD field istemiyorum ben" diyorsan=3DFDz yine =
    >
    > isimleri
    >
    > > de=3DF0i=3DFEtirtmemek ko=3DFEuluyla isimlerle =
    >
    > =3DE7al=3DFD=3DFEabilirsiniz, bu =3D
    >
    > > size bir engel
    > > yarat=3DFDr m=3DFD?
    > >=20
    > > v.s v.s. =3DFEeklinde sorular =3DE7o=3DF0alt=3DFDlabilir...
    > >=20
    > > Bence tablo yap=3DFDs=3DFDn=3DFD ve yapmak istedi=3DF0iniz (yani if =
    >
    > bloklar=3DFD =3D
    >
    > > i=3DE7erisine
    > > ne kodu yazacaksan=3DFDz mesela) i=3DFEleri biraz daha geni=3DFE =3D
    > > a=3DE7=3DFDklarsan=3DFDz daha
    > > yarat=3DFDc=3DFD fikirler =3DFCretilebilir...
    > >=20
    > >=20
    > >
    > > > =3D20
    > > >=3D20
    > > > =3DDDnsallah anlatabilmisimdir :)
    > > >=3D20
    > > > Tsk.
    > > >=3D20
    > > > =3D20
    > > >=3D20
    > > > Fuat
    > > >=3D20
    > > > =3D20
    > > >=3D20
    > > >=3D20
    > > >=3D20
    > > >=3D20
    > > >=3D20
    > > >=3D20
    > > >=3D20
    > > >=3D20
    > > >=3D20
    > >
    > >=20
    > >=20
    > > Hazar Agency & Computer Systems
    > > Phone: +90 212 356 65 56
    > > +90 212 356 62 75
    > >=20
    > > Projects and Software Development Department Manager
    > > Gurkan ASLAN (a.k.a. Integer)
    > >=20
    > >=20
    > >=20
    >
    > Hazar Agency & Computer Systems
    > Phone: +90 212 356 65 56
    > +90 212 356 62 75
    >
    > Projects and Software Development Department Manager
    > Gurkan ASLAN (a.k.a. Integer)

    -- 
    "Wenn ich mir so die Qualitaet mancher Gateways anschaue, wundert es mich 
    nicht, dass die Programmierer sich nicht trauen, den Source rauszuruecken. Wo 
    sollten sie den auch posten? In de.talk.jokes?"
    Heiko Schlichting in de.admin.news.misc
    ################################
    Yilmaz Cankaya
    Mähringer Weg 91 
    89075 Ulm / Germany
    www.yilmaz-cankaya.de
    ################################
    -- Attached file included as plaintext by Ecartis --
    -- Desc: signature
    -----BEGIN PGP SIGNATURE-----
    Version: GnuPG v1.2.3 (GNU/Linux)
    iD8DBQBAT3OUsvQCnuaPWXkRAvdDAKDKBJvz0J0417G6L0j3bik5hnmrEACfc/i7
    8z/ozkOEo+snO0RsZxTYJp0=
    =ehU3
    -----END PGP SIGNATURE-----
    

  • Next message: Devrim GUNDUZ: "[linux-programlama] PostgreSQL 7.4.2 duyuruldu."

    ---------

    Bu arsiv hypermail 2.1.6 tarafindan uretilmistir.