Kayıtlar

Normalizasyon Kuralları-3. Normal Form

Resim
Merhabalar Arkadaşlar, Bugünkü yazımda daha önce başlangıcını yaptığımız normalizasyon kurallarına 2.NF ile devam ediyoruz. 2.NF'i anlattığım yazı için  tıktık . 3. NORMAL FORM Öncelikle veri tabanı 2NF'e uygun olmalı ve Anahtar olmayan hiç bir kolon bir diğerine ( anahtar olmayan başka bir kolona ) bağıl olmamalıdır . Her kolon eşsiz anahtara tam bağımlı olmak zorundadır . 2 NF ' e uygun hale getirdiğimizde elimizde yukarıdaki gibi 2 tablo oluşmuştu ancak burada 3 NF'e uygun olmayan bir yapı var. 3 NF'e uygun hale getirmek için tablolarımızı aşağıdaki gibi düzenliyoruz. 3 NF kuralını da uyguladığımızda tablomuz normalizasyon kurallarına uygun hale geldi.Normalizasyon kurallar 6 NF'e kadar devam etmesine rağmen 3 NF'e kadar uygulandığında veri tabanı normal olarak kabul edilir.

Normalizasyon Kuralları-2. Normal Form

Resim
Merhabalar Arkadaşlar, Bugünkü yazımda daha önce başlangıcını yaptığımız normalizasyon kurallarına 2.NF ile devam ediyoruz. 1.NF 'i anlattığım yazı için tıktık . 2. NORMAL FORM 2 NF'in 1 NF'ten ayrı tek bir kuralı vardır. O da anahtar   olarak tanımlanabilecek bir kolona bütün diğer kolonların tam bağlı olması ve herhangi bir alt kümesine bağlı olmamasıdır. Herhangi bir veri alt kümesi birden çok satırda tekrarlanmamalıdır . Bu tür veri alt kümeleri için yeni tablolar oluşturulmalıdır . 1 NF uygulandığında elimizdeki tablo bu şekildeydi.Aşağıda ise 2 NF uygulanmış hali bulunuyor. Şuan elimizdeki tablolar 2.NF Kurallarına uygun hale geldi. Bir sonraki yazımızda aynı tabloyu 3.NF'e göre düzenleyeceğiz.

Normalizasyon Kuralları-1. Normal Form

Resim
Merhabalar arkadaşlar, Bugünki yazımda sizlere normalizasyon kurallarının 1.si olan 1. Normal Formu açıklamaya çalışacağım. Öncelikle Normalizasyonun ne olduğu ile başlayalım. Normalizasyon  Verilerin düzenli olarak veri tabanında tutulmasını sağlayan kurallar topluluğudur . 6 NF'e kadar gitmesine rağmen genelde 3 NF'e kadar uygulanır.  1. NORMAL FORM elimizde yukarıdaki gibi bir tablo var ve bu tabloyu 1. NF'e uyduralım. Her  kolonda   yalnızca   bir   değer   bulunabilir Bir   alan   içerisindeki   bilgi   özel   karakterlerle   ayrılarak   tutulmamalıdır Aynı tabloda tekrarlayan kolon olmamalı. Ders kolonları tekrarlandığından aşağıdaki şekilde düzenleriz. Her satır bir eşsiz anahtarla tanımlanmalıdır . (Unique Key – Primary Key). Tabloya Primary Key ekleriz. Şuan elimizdeki tablo 1.NF Kurallarına uygun hale geldi. Bir sonraki yazımızda aynı tabloyu 2.NF'e göre...

CONSTRAINTS-KISITLAYICILAR

Merhabalar arkadaşlar, Bugünki yazımda sizlere kısıtlayıcılardan bahsedeceğim.Kısıtlayıcılar veri tabanında tutarlılığı ve bütünlüğünü sağlamak ayrıca yanlış veri girişini engellemek amacıyla belirlenmiş kurallardır. DEFAULT CONSTRAINT Default constraint sayesinde kolona bir değer girilmediği taktirde varsayılan olarak ne  girilmesi  gerektiğini ayarlayabiliyoruz . CHECK CONSTRAINT Bir kolona girilecek olan verinin belirli bir şarta uymasını zorunlu tutar . Örneğin doğum tarihi verisi girilen kolona bugünün tarihinden daha büyük bir verinin girilememesi. PRIMARY KEY CONSTRAINT Tabloda seçtiğimiz  kolona eklenen primary key ile    o kolonun taşıdığı verinin tekil olacağı da garanti edilmiş olur . Böylece veri tabanında gereksiz büyümenin önüne geçilir. UNIQUE CONSTRAINT Unique constraintin tek amacı,belirttiğimiz kolondaki değerlerin tekil olmasını sağlamaktır . Primary Key'den farkı tek bir defaya m...

SQL ROW_NUMBER() ile Tekrarlı Satırları Silmek

Resim
Merhabalar, Bugün sizlerle SQL Server'da ROW NUMBER ifadesini kullanarak tekrar eden verileri silip her bir verinin unique olmasını sağlayan SQL kodumuzu yazacağız. Özellikle veri tabanımızı oluştururken ID değerimizi identity(otomatik arttırma) özelliğimizi etkinleştirmediysek tekrar eden ID değerlerini silerken işimizi çok kolaylaştıracak bir yöntem. Aşağıdaki fotoğrafta tablomuz ve verilerimiz bulunuyor bizim istediğimiz verilerimizin tutarlılığı açısından her bir satırımızın tekrar etmeyen şekilde veri tabanımızda bulunması. SELECT *, ROW_NUMBER()OVER(PARTITION BY ID ORDER BY ID) AS RowNumber    FROM Calisan Yukarıdaki kodumuzu yazdığımızda ID'ye göre numaralandırılan yeni bir kolon oluşturuluyor. Sorgumuzu çalıştırdığımızda dönen sonuç bu şekilde oluyor. yani RowNumber değeri 1 dışında olanları silersek her tüm verilerimiz tekrarsız olacak. Yukarıda yazdığımız sorgumuzu Common Table Expression kullanarak silme işlemi gerçekleştireceğiz. Common...

Excelde Macro ile Sayfa Düzenlemek

Merhabalar, bugünkü yazımda sizlere excelde veri birleştirmesi yaparken farklı workbooklardan veri alma işleminde her workbookta aynı düzende veri girişi yapılmamış ise arada boş geçilen kolonları VBA ile silmek için yazmamız gereken kodu paylaşacağım. Sub Delete_Columns() Dim C As Integer C = ActiveSheet.Cells.SpecialCells(xlLastCell).Column Do Until C = 0 If WorksheetFunction.CountA(Columns(C)) = 0 Then Columns(C).Delete End If C = C - 1 Loop End Sub Yukarıdaki macroyu çalıştırdığımızda bulunduğumuz sayfadaki boş kolonlar otomatik olarak silinir. bu macro farklı kaynaklardan aldığımız düzensiz verileri birleştirirken işimizi oldukça kolaylaştırıyor.

Excel VBA ile Farklı Sayfalardaki Verileri Bir Sayfada Birleştirmek

Merhabalar, bugünkü yazımda sizlere daha önce farklı dosyalardan alıp ayrı ayrı sayfalara eklediğimiz excel verilerini bir sayfada birleştirmek için yazabileceğimiz kodu paylaşacağım. Sub Combine() Dim J As Integer On Error Resume Next Sheets(1).Select Worksheets.Add Sheets(2).Activate Range("A1").EntireRow.Select Selection.Copy Destination:=Sheets(1).Range("A2") 'sayfa sayısı kadar dönmeyi sağlar For J = 2 To Sheets.Count Sheets(J).Activate Range("A1").Select Selection.CurrentRegion.Select Selection.Offset(1, 0).Resize(Selection.Rows.Count - 1).Select ' sayfadaki son dolu hücrenin altına eklemeyi sağlar Selection.Copy Destination:=Sheets(1).Range("A65536").End(xlUp)(2) Next End Sub