none
Kategori ve alt kategori hk. yardım lütfen. RRS feed

  • Soru

  • Arkadaşlar Merhabalar,

    Kategoriler ve alt kategoriler mantığını tam anlayamadım desteğinizi rica ediyorum.

    Normalde  aşağıdaki gibi iki tablo hazırlayıp yapabiliyorum fakat alt kategori seçeneği çoğalınca ( Kategori-->xAltKategori-->xxAltKategori gibi...) aşağıdaki tablolar yetersiz kalabiliyor.

    Tbl_Kategoriler ( KategoriID, KategoriAdı )

    Tbl_AltKategoriler ( AltKategoriID, AltKategoriAdı, KatID )

    Biraz araştırdım, bu işlemler tek tablo halinde sınırsız kategori mantığı ile daha profesyonel olarak yapılabiliyor sanırım fakat ben yapamadım.

    Gerekirse id verebilirim, bana bir örnek uygulama yaparak bu mantığı anlamamda yardımcı olmanızı rica ediyorum.

    Syg.

    C# MsSql Server

    1 Temmuz 2020 Çarşamba 21:06

Yanıtlar

  • Iki degil tek tablo kullanırsaniz olur.

    CREATE TABLE [kategoriler](
    	[KategoriId] [int] IDENTITY(1,1) NOT NULL primary key,
    	[KategoriAd] [nvarchar](100) NULL,
    	[UstKategoriId] [int] NULL foreign key references [kategoriler] ([KategoriId])
    

    Buna "self referencing" deniyor. Northwind ornek veritabanına bakarsanız orada da Employees tablosunda bu sekilde, personelin bağlı olduğu kisi ManagerId ile belirtiliyor (ayni tablonun ID'si).

    Bu tip baglantiyi yönetmek her zaman kolay olmayabilir. Bu sekilde tutmak yerine, tum üstüne kategorilerini bir hiyerarşi seklinde tutmak da kullanılan yöntemlerden.

    postgreSQL olsa, ustKategoriler, altkategoriler array olabilirdi.




    Blog
    How to create a Minimal, Reproducible Example
    The way to Go.
    World's most advanced open source (object-) relational Database.
    Flutter (for mobile, for web & desktop.


    Not: Temelin geri zekali arkadasi Idris bu mesaja da atlayip ne kadar aptal oldugunu bir kez daha belgeleyebilir. Kendisinin tek marifeti beni takip edip, neden her soruya cevap verdigimi, yardim etmeye calistigimi sorgulamaktir. Bu beyinsiz zavalliya, aptal oldugunu hatirlatmayi unutmayiniz.

    • Yanıt Olarak İşaretleyen Levent_01 3 Temmuz 2020 Cuma 21:13
    1 Temmuz 2020 Çarşamba 21:56
    Yanıtlayıcı
  • Internetde "self referencing tables" diye aratabilirsin. 


    Blog
    How to create a Minimal, Reproducible Example
    The way to Go.
    World's most advanced open source (object-) relational Database.
    Flutter (for mobile, for web & desktop.


    Not: Temelin geri zekali arkadasi Idris bu mesaja da atlayip ne kadar aptal oldugunu bir kez daha belgeleyebilir. Kendisinin tek marifeti beni takip edip, neden her soruya cevap verdigimi, yardim etmeye calistigimi sorgulamaktir. Bu beyinsiz zavalliya, aptal oldugunu hatirlatmayi unutmayiniz.

    • Yanıt Olarak İşaretleyen Levent_01 3 Temmuz 2020 Cuma 21:13
    2 Temmuz 2020 Perşembe 21:27
    Yanıtlayıcı

Tüm Yanıtlar

  • Iki degil tek tablo kullanırsaniz olur.

    CREATE TABLE [kategoriler](
    	[KategoriId] [int] IDENTITY(1,1) NOT NULL primary key,
    	[KategoriAd] [nvarchar](100) NULL,
    	[UstKategoriId] [int] NULL foreign key references [kategoriler] ([KategoriId])
    

    Buna "self referencing" deniyor. Northwind ornek veritabanına bakarsanız orada da Employees tablosunda bu sekilde, personelin bağlı olduğu kisi ManagerId ile belirtiliyor (ayni tablonun ID'si).

    Bu tip baglantiyi yönetmek her zaman kolay olmayabilir. Bu sekilde tutmak yerine, tum üstüne kategorilerini bir hiyerarşi seklinde tutmak da kullanılan yöntemlerden.

    postgreSQL olsa, ustKategoriler, altkategoriler array olabilirdi.




    Blog
    How to create a Minimal, Reproducible Example
    The way to Go.
    World's most advanced open source (object-) relational Database.
    Flutter (for mobile, for web & desktop.


    Not: Temelin geri zekali arkadasi Idris bu mesaja da atlayip ne kadar aptal oldugunu bir kez daha belgeleyebilir. Kendisinin tek marifeti beni takip edip, neden her soruya cevap verdigimi, yardim etmeye calistigimi sorgulamaktir. Bu beyinsiz zavalliya, aptal oldugunu hatirlatmayi unutmayiniz.

    • Yanıt Olarak İşaretleyen Levent_01 3 Temmuz 2020 Cuma 21:13
    1 Temmuz 2020 Çarşamba 21:56
    Yanıtlayıcı
  • Bu tip baglantiyi yönetmek her zaman kolay olmayabilir. Bu sekilde tutmak yerine, tum üstüne kategorilerini bir hiyerarşi seklinde tutmak da kullanılan yöntemlerden.

    Çetin Bey Merhaba,

    Öncelikle teşekkür ederim yardımcı olmaya çalıştığınız için.

    Geç dönüşüm için kusura bakmayınız, iş yerimde net olmadığı için henüz yeni girebildim net e.

    Yukarıda belirttiğiniz yöntem ile nasıl yapabilirim, destek olabilir misiniz?

    anydesk id versem bağlanıp bi göz atmanız mümkün olur mu?

    Syg.

    2 Temmuz 2020 Perşembe 19:28
  • Internetde "self referencing tables" diye aratabilirsin. 


    Blog
    How to create a Minimal, Reproducible Example
    The way to Go.
    World's most advanced open source (object-) relational Database.
    Flutter (for mobile, for web & desktop.


    Not: Temelin geri zekali arkadasi Idris bu mesaja da atlayip ne kadar aptal oldugunu bir kez daha belgeleyebilir. Kendisinin tek marifeti beni takip edip, neden her soruya cevap verdigimi, yardim etmeye calistigimi sorgulamaktir. Bu beyinsiz zavalliya, aptal oldugunu hatirlatmayi unutmayiniz.

    • Yanıt Olarak İşaretleyen Levent_01 3 Temmuz 2020 Cuma 21:13
    2 Temmuz 2020 Perşembe 21:27
    Yanıtlayıcı
  • Çetin Hocam Merhabalar,

    Desteğiniz için teşekkür ederim, çok sağolun.

    3 Temmuz 2020 Cuma 21:13