Müdavim Girişi

E-Posta
Parola

Ücretsiz Kayıt Ol


Online Müdavimler (0 Kişi)
  • Online Kişi Bulunmadı

Yazar Hakkında
x
İsmail Kocacan
İsmail Kocacan is experienced on many development platforms and continues to learn technologies. Since the age of 16-17, dealing with software technologies. And continuous learning, teaching, research, continues to develop.
Hiyerarşik Tasarım(Kategorileme)

Bu makalemde sizlere VeriTabaninda hiyerarsik Kategorilemeyi anlaticam. Yani bir agaç yapisini (Treeview)tabloda nasil tutariz bunu anlaticam. VeriTabani olarak SQL Server kullanicam. Tabi siz istediginiz bir veritabaninda yapabilirsiniz. Öncelikle bir Kategoriler tablosu tasarlayalim asagidaki gibi.

 

CREATE TABLE [dbo].[Kategoriler](
       [KategoriNo] [int] IDENTITY(1,1) NOT NULL,
       [KategoriAd] [varchar](75) NULL,
       [UstKategoriNo] [int] NULL CONSTRAINT [DF_Hiyerarsi_ParentCategoryID] DEFAULT ((0)),
 CONSTRAINT [PK_Categories] PRIMARY KEY CLUSTERED
(      
       [KategoriNo] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]

 Yapi nasil isleyecek?
Öncelike bu tabloya bir AnaKategori ekleyecegimiz zaman UstKategoriNo alanina 0 degeri giricez. Diger AltKategorileri girerkende UstKategoriNo alanina, bagli oldugu UstKategorinin KategoriNo alanindaki degeri giricez. Mantik bundan ibarettir.
 

Daha sonra Kategoriler Tablosuna asagidaki gibi örnek veriler girebilirsiniz.

Simdi yukaridaki tablodaki verileri inceleyecek olursak;
Daha önce dedigim gibi UstKategoriNo alaninda 0 “Sifir” varsa o Kategori, Ana Kategoridir.

Yukaridaki tablodada iki Tane Ana Kategori var.
Bunlar; Bilgisayar ve Kitap Kategorileridir.
Ana Kategori Listesini elde etmek için;

select * from Kategoriler where UstKategoriNo=0
Kategorinin Alt Kategorisini Elde Etmek için ;

Tabi su an pek kullanisli gözükmüyor. Daha sonra bunun programatik kisimda Treview(Aga Yapisi) Nesnesi üzerinde, Farkli uygulamalarda(Web, Windows) gösterimini anlaticam.

Herkese Çalismalarinda Basarilar
ismailkocacan@gmail.com

Ismail Kocacan

Kategori : VeriTabanı Tasarımı | 27.09.2010 15:09:00  | 2029 defa okundu  | 1 Yorum |

Yazara Ait Diğer Makaleler(51) Makaleye Yapılan Yorumlar Yorum Yazıcam
Samet KARATAŞ | 11.10.2010 16:31:00
teşekkürler ...
Ara
 
Anket
Hangi VeriTabanı Yönetim Sistemini Kullanıyorsunuz ?