Sunum yükleniyor. Lütfen bekleyiniz

Sunum yükleniyor. Lütfen bekleyiniz

SQL SERVER 2008 VERİ TİPLERİ.

Benzer bir sunumlar


... konulu sunumlar: "SQL SERVER 2008 VERİ TİPLERİ."— Sunum transkripti:

1 SQL SERVER 2008 VERİ TİPLERİ

2 Sql tam sayı veri tipleri
Bit: Fiziksel olarak 1 bayt yer kaplar. Bit 1 ya da 0 değeri depolar. Böylece yazılım uygulamalarında true/false yapısına destek verir. Tinyint: Fiziksel olarak 1 baytlık yer kaplar. 0 ile 255 aralığında veri depolamak için kullanılır Smallint: Fiziksel olarak 2 baytlık yer kaplar. -32,768 ile 32,767 aralığındaki değerleri depolamak için kullanılır.

3 Sql tam sayı veri tipleri
Int: Fiziksel olarak 4 baytlık yer kaplar. 2,147,483,648 ile 2,147,483,648 aralığında değerleri depolamak için kullanılır. Bigint: 8 baytlık yer kaplar. -9,223,372,036,854,775,808 ile 9,223,372,036,854,775,807 aralığındaki değerleri depolamak için kullanılır.

4 Ondalık sayı veri tipleri
SmallMoney: Fiziksel olarak 4 baytlık yer kaplar ,3648 ile ,3647 aralığındaki değerleri depolamak için kullanılır. Money : 8 baytlık yer kaplar. ,5808 ile ,5807 aralığındaki değerleri depolamak için kullanılır.

5 Metinsel Veri tipleri Char: Sabit uzunluktaki ANSI(İngilizce karakter) karakterleri depolamak için kullanılır. Her bir karakter için veritabanında 1 baytlık yer kaplar. En fazla 8000 karakter kadar veri saklayabilir. Char tipinde bir alan tanımlandığında, alan, veri alanı kapasitesinden az sayıda karakter içerse bile veri tabanında aynı büyüklükte yer kaplar. Örnek: Char (6) şeklinde tanımlandığında bu alana ‘Ali’ değeri de girilse ‘Zeynep’ değeri de girilse veri tabanında 6 baytlık yer kaplayacaktır. Aynı alana ‘mustafa’ değeri girilirse veritabanı bu değeri ‘mustaf’ olarak saklayacaktır.

6 Metinsel Veri tipleri Varchar: VarChar tipinde bir alan tanımlandığında alan içerisine girilen veri kadar yer kaplar. Örnek: VarChar (6) şeklinde tanımlandığında bu alana ‘Ali’ değeri girilirse 3 baytlık ‘Zeynep’ değeri girilirse veri tabanında 6 baytlık yer kaplayacaktır. Aynı alana ‘mustafa’ değeri girilirse veritabanı bu değeri ‘mustaf’ olarak saklayacaktır.

7 Metinsel Veri tipleri Text: Veri tipi 8000 karakterden fazla uzunluktaki ANSI(İngilizce karakter) karakterleri depolamak için kullanılır. NCHAR: Veri tipi char gibidir. Ancak ANSI yerine UNICODE karakter seti kullanılır. Bu nedenle bir bayt yerine 2 bayt yer işgal eder karaktere kadar metin saklayabilir ve sabit uzunluktaki metinleri depolar. NVARCHAR: UNICODE karakter depolamak için kullanılır

8

9 Tarih/ zaman Veri tipleri
SmallDateTime: Fiziksel olarak 4 baytlık yer kaplar. 1 Ocak 1960 ile 6 Haziran 2079 arasında tarihleri depolar. Tarih ve zaman bilgisini “ 1” dakikalık hassasiyetle kayıt tutar. DateTime: Fiziksel olarak 4 baytlık yer kaplar. 1 Ocak 1753 ile 31 Aralık 9999 arasındaki tarihleri depolayabilir. Tarih bilgisini 3,33 milisaniyelik hassasiyetle kayıt edebilir.

10 Veri Tipleri Seçimi Metinsel veri tiplerini seçerken ilk bakmamız gereken şey ulusal karakterleri kullanıp kullanamayacağımızdır. Örneğin; adreslerini depolayacak bir alan”ç,ğ,ş,ü” gibi harfleri barındırmayacağımızdan ANSI veri tipleri olan char yada varchar daha akıllıca olacaktır.

11 Veri Tipleri Seçimi Metinsel veri tiplerini seçerken ikinci bakmamız gereken şey durum değerlerin sabit uzunlukta olup olmadığıdır. Örneğin web adreslerinin karakter sayıları değişkenlik gösterir. Bu nedenle böyle bir alan için değişken boyutta metin veri tipi olan varchar veya text kullanmak daha akıllıca olacaktır. Ancak eğer plaka bilgisi tutacaksak sabit uzunlukta veriler kayıt edeceğiz demektir ve char veri tipi kullanmamız daha doğru olur.

12 Veri Tipleri Seçimi Metinsel veri türünde bilgiler depolayacak alanlar tanımlanırken tutabilecekleri en fazla karakter sayısının belirtilmesi gerekir. Burada dikkat edilmesi gereken nokta bir alan için alabileceği en uzun değerin üzerinde veri girersek, verinin sınırının üzerinde kalan kısmının silinecek olmasıdır. Bu nedenle alanda karakter sayısı belirtilirken olası en uzun karakter sayısının doğru analiz edilerek belirtilmesidir.

13 Veri Tipleri Seçimi Bazen bazı bilgileri saklarken metinsel veri tipi mi yoksa sayısal veri tipi mi kullansak daha iyi olur diye tereddütte kaldığımız olabilir. Örneğin: T.C Vatandaşlık numarası tamamen rakamlardan oluşmuştur ve sabit uzunluktadır. 11 rakamdan oluşan vatandaşlık numaralarını char(11) veri tipiyle tanımlanan bir alanda tutmak mümkündür. Fakat 11 baytlık bir yer kaplar. Aslında temel olarak matematiksel işlemlerde ve sayısal karşılaştırmalarda kullanmayacağımız bilgileri sayısal veri tipleriyle kayıt etmemize gerek yoktur.

14 Veri Tipleri Seçimi Örneğin: vatandaşlık numarası için 11 basamaklı tam sayı değerleri depolayabilen bigint veri tipini kullanırsak, sırf bu alanda kayıt başına 3 bayt kazanmış oluruz. Bu da yaklaşık 70 milyon mevcut nüfusu olan Türkiye’de kabaca 30 milyon civarında da eski kayıtlar olduğunu varsayarsak, 100 milyon kayıtta 300 milyon baytlık, yani 300 MB alan kazanırız.

15 Veri Tipleri Seçimi Sayısal verilerle çalışırken ilk yapmamız gereken tam sayı-ondalık sayı ayrımıdır. Bu ayrımı yaptıktan sonra, alanın alacağı en yüksek değere göre uygun olan veri tipini seçmemiz yeterlidir. Özellikle parasal değerler girilecek bir alan tanımlıyorsanız smallmoney ya da Money veri tipini kullanabilirsiniz. Alan ondalık değerleri de tutacaksa decimal kullanın.

16 Null ve Not Null Bir alanın NULL olarak tanımlanması demek bu alana veri girilmeden yeni bir satır oluşturulabileceği anlamına gelir. Örneğin: iki isimli insanları düşünerek 2. isim diye bir yer açtık tablomuzda. Fakat her insanın 2. ismi olmak zorunda değil. Ozaman 2. isim özelliğini NULL yapabiliriz. Fakat bazı veriler varki bunları kesinlikle NULL yapamayız. Mesela TC kimlik numarası her insanda olmak zorundadır. O yüzden TC kimlik numarası değerini kesinlikle boş bırakılamaz.

17 IDENTITY Oluşturulan bir tabloda verilerin ardışık sayılardan oluşan değerleri alması isteniyorsa identity özelliği kullanılır. Yani veri ekleyeceğimiz zaman ürün veya nesnesinin ID sayısı otomatik olarak artar. Tanımlayıcı alanlar Null değer alamazlar(ID ler) ve her tabloda ancak ve sadece bir tanımlayıcı alan olabilir(bir tane primary Key). Tanımlayıcı alanlar gelende int,bigint,smallint,tinyint,numeric, yada decimal olabilir. Tanımlayıcı alanlar(ID) ler güncellenemezler.


"SQL SERVER 2008 VERİ TİPLERİ." indir ppt

Benzer bir sunumlar


Google Reklamları