Sunum yükleniyor. Lütfen bekleyiniz

Sunum yükleniyor. Lütfen bekleyiniz

Veri Tabanı Yönetim Sistemleri

Benzer bir sunumlar


... konulu sunumlar: "Veri Tabanı Yönetim Sistemleri"— Sunum transkripti:

1 Veri Tabanı Yönetim Sistemleri
Kenan KILIÇASLAN

2 Kenan KILIÇASLAN http://www.kilicaslan.nom.tr kenank@beykent.edu.tr
Tablo oluşturma Kenan KILIÇASLAN

3 CREATE TABLE deyiminin tam biçimi
CREATE TABLE tablo_adı ( <kolon_tanımı>, <kolon_tanımı>,…. | <tablo_ kısıtlaması > ) B.Ü. Meslek Yüksek Okulu Bilgisayar Teknolojileri ve Programlama

4 CREATE TABLE deyimi Kolon tanımlaması
kolon_adı datatip DEFAULT sabit_denklem IDENTITY (başlangıç, artış ) <kolon_kısıtlaması>, <kolon_kısıtlaması>,… B.Ü. Meslek Yüksek Okulu Bilgisayar Teknolojileri ve Programlama

5 CREATE TABLE deyimi Kolon kısıtlaması
CONSTRAINT kısıtlama_adı NULL | NOT NULL PRIMARY KEY | UNIQUE CLUSTERED | NONCLUSTERED [FOREIGN KEY] REFERENCES ref_tablo [(ref_kolon)] CHECK (mantıksal_ifade) B.Ü. Meslek Yüksek Okulu Bilgisayar Teknolojileri ve Programlama

6 CREATE TABLE deyimi Tablo kısıtlaması
[CONSTRAINT kısıtlama_adı] PRIMARY KEY | UNIQUE CLUSTERED | NONCLUSTERED ( kolon[,...n] ) FOREIGN KEY [(kolon[,...n])] REFERENCES ref_tablo [(ref_kolon[,...n])] CHECK (mantıksal_ifade) B.Ü. Meslek Yüksek Okulu Bilgisayar Teknolojileri ve Programlama

7 PRIMARY KEY kısıtlaması
Bir kolon için verilen bu özellik tablo bazında her satır için ayrı olan bir anahtar değerini içerir. Her tabloda sadece bir PRIMARY KEY yaratılır. B.Ü. Meslek Yüksek Okulu Bilgisayar Teknolojileri ve Programlama

8 NULL, NOT NULL kısıtlaması
NULL değerinin kolonda kullanılıp kullanılmamasını sağlar. Tanımlamada NOT NULL bulunması durumunda, kolon’un değeri hiçbir zaman null olamaz. Mutlaka bilgi girilmelidir. Tanımlamada belirtilmemesi durumunda NULL işlemi görür. B.Ü. Meslek Yüksek Okulu Bilgisayar Teknolojileri ve Programlama

9 Bilgisayar Teknolojileri ve Programlama
CHECK kısıtlaması Kolon yada kolonlara girilecek değerleri kısıtmayı sağlayan bir deyimdir. B.Ü. Meslek Yüksek Okulu Bilgisayar Teknolojileri ve Programlama

10 Bilgisayar Teknolojileri ve Programlama
IDENTITY kısıtlaması Yeni kolonun IDENTITY olup olmadığını belirler. Tabloya yeni satır eklendiğinde, SQL server otomatik olarak artan değer verir. Örnek; IDENTITY (1,2) 1 sayısı ilk değeri, 2 sayısı artışı belirtir. B.Ü. Meslek Yüksek Okulu Bilgisayar Teknolojileri ve Programlama

11 Bilgisayar Teknolojileri ve Programlama
UNIQUE kısıtlaması Bir kolon için verilen bu özellik tablo bazında tek olan değerlerin kullanılmasını sağlar. Bir tabloda çok sayıda UNIQUE kısıtlaması bulunabilir. B.Ü. Meslek Yüksek Okulu Bilgisayar Teknolojileri ve Programlama

12 FOREIGN KEY...REFERENCES kısıtlaması
Data bütünlüğüne referans olarak destek olan FOREIGN KEY kısıtlaması, kolon içindeki değerin belirtilen bir tabloda olmasını zorunlu kılar. ref_tablo : FOREIGN KEY kısıtlaması ile belirtilen tablonun adı. ref_kolon : FOREIGN KEY kısıtlaması ile belirtilen kolon yada kolonlar listesi. B.Ü. Meslek Yüksek Okulu Bilgisayar Teknolojileri ve Programlama

13 INDEX ‘lerin yaratılması açıklama
CREATE TABLE deyiminde kullanılan PRIMARY KEY ile bir unique (tek) indez yaratılır. UNIQUE ile yine bir unique index yaratılır. CLUSTERED ile bir clustered index yaratılır. NONCLUSTERED ile bir nonclustered index yaratılır. B.Ü. Meslek Yüksek Okulu Bilgisayar Teknolojileri ve Programlama

14 INDEX ‘lerin yaratılması (Tam yazım biçimi)
CREATE UNIQUE CLUSTERED | NONCLUSTERED INDEX index_adı ON table (kolon [,...n]) B.Ü. Meslek Yüksek Okulu Bilgisayar Teknolojileri ve Programlama

15 Bilgisayar Teknolojileri ve Programlama
UNIQUE deyimi Bu tip indexlerde, indexte tek değer olmalıdır. Bir kolon veya bir den çok kolon üzerinde olabilir. B.Ü. Meslek Yüksek Okulu Bilgisayar Teknolojileri ve Programlama

16 Bilgisayar Teknolojileri ve Programlama
CLUSTERED deyimi CLUSTERED İndexler tabloların sıralamasını etkiler. Bu deyimle oluşturulmuş indexlere göre tablolar dizilir. Bir tabloda sadece 1 adet CLUSTERED index bulunabilir. B.Ü. Meslek Yüksek Okulu Bilgisayar Teknolojileri ve Programlama

17 Bilgisayar Teknolojileri ve Programlama
NONCLUSTERED deyimi Bu indexler tabloların sıralamasını etkilemez sadece mantıksal sıralama yatırır.  Bir tabloda sadece 249 adet NONCLUSTERED index bulunabilir. B.Ü. Meslek Yüksek Okulu Bilgisayar Teknolojileri ve Programlama

18 Bilgisayar Teknolojileri ve Programlama
B.Ü. Meslek Yüksek Okulu Bilgisayar Teknolojileri ve Programlama

19 Bilgisayar Teknolojileri ve Programlama
Müşteri tablosu CREATE TABLE musteri ( MusteriNo int, MusteriAdi varchar(20), MusteriSoyadi varchar(20), Adresi varchar(100), telefonu char(11) ) B.Ü. Meslek Yüksek Okulu Bilgisayar Teknolojileri ve Programlama

20 Bilgisayar Teknolojileri ve Programlama
Ürün Tablosu CREATE TABLE urun ( UrunNo char(10), UrunAdi varchar(20), Fiyati money, Birimi char(5), Miktari decimal(10,2) ) B.Ü. Meslek Yüksek Okulu Bilgisayar Teknolojileri ve Programlama

21 Bilgisayar Teknolojileri ve Programlama
Sipariş Tablosu CREATE TABLE siparis ( SiparisNo int, MusteriNo int, SiparisTarihi datetime, Aciklama varchar(100), TeslimAdresi varchar(100), TeslimTarihi datetime ) B.Ü. Meslek Yüksek Okulu Bilgisayar Teknolojileri ve Programlama

22 Bilgisayar Teknolojileri ve Programlama
Sipariş Detay Tablosu CREATE TABLE SiparisDetay ( SiparisNo int, UrunNo char(10), Miktari Decimal(10,2), SatisFiyati money ) B.Ü. Meslek Yüksek Okulu Bilgisayar Teknolojileri ve Programlama

23 Kısıtlama olan bir tablo oluşturmak- müşeri tablosu
Kolon Adı Data Tipi Kısıtlamalar musterino int Birincil Anahtar not null, otomatik sayı musteriadi Varchar(20) Not null musterisoyadi adresi Varchar(100) telefonu Char(11) B.Ü. Meslek Yüksek Okulu Bilgisayar Teknolojileri ve Programlama

24 Müşteri tablosu (kısıtlama var)
Bu deyim MusteriNo kolonunu birincil anahtar yapar Müşteri tablosu (kısıtlama var) Bu deyim MusteriNo kolonuna veri girilmesini zorunlu yapar CREATE TABLE musteri ( MusteriNo int PRIMARY KEY NOT NULL IDENTITY(1,1), MusteriAdi varchar(20) NOT NULL, MusteriSoyadi varchar(20) NOT NULL, Adresi varchar(100), telefonu char(11) ) Bu deyim ile her eklenen yeni müşteriye otomatik numara verir. B.Ü. Meslek Yüksek Okulu Bilgisayar Teknolojileri ve Programlama

25 Bilgisayar Teknolojileri ve Programlama
Ürün Tablosu Kolon Adı Data Tipi Kısıtlamalar UrunNo Char(10) Birincil anahtar not null UrunAdi Varchar(20) Not null Fiyati Money Birimi char(5) Varsayılan değer adet Miktari Decimal(10,2) B.Ü. Meslek Yüksek Okulu Bilgisayar Teknolojileri ve Programlama

26 Bilgisayar Teknolojileri ve Programlama
Ürün Tablosu CREATE TABLE urun ( UrunNo char(10) PRIMARY KEY NOT NULL, UrunAdi varchar(20) NOT NULL, Fiyati money NOT NULL, Birimi char(5) DEFAULT ‘ADET’, Miktari decimal(10,2) ) B.Ü. Meslek Yüksek Okulu Bilgisayar Teknolojileri ve Programlama

27 Tablolar arasında ilişki kurma
İKİ METOD VARDIR TABLOLAR OLUŞTURULURKEN CREATE TABLE deyimi içinde TABLOLAR OLUŞTURULDUKTAN SONRA ALTER TABLE deyimi içinde OLMAZSA OLMAZLAR Tablonun 1 tarafındaki alan PRIMARY KEY olacak Her iki tarafta ilişkili alanlar NOT NULL olacak B.Ü. Meslek Yüksek Okulu Bilgisayar Teknolojileri ve Programlama

28 Bilgisayar Teknolojileri ve Programlama
Sipariş Tablosu Kolon Adı Data Tipi Kısıtlamalar SiparisNo int Otomatik artan sayı, boş olamaz, Birincil Anahtar MusteriNo Bu alan musteri tablosundaki ilgili alanla ilişkili SiparisTarihi datetime Varsayılan değer bugünün tarihi Aciklama Varchar(100) TeslimAdresi TeslimTarihi Datetime NOT NULL B.Ü. Meslek Yüksek Okulu Bilgisayar Teknolojileri ve Programlama

29 Bilgisayar Teknolojileri ve Programlama
Sipariş Tablosu CREATE TABLE siparis ( SiparisNo int NOT NULL PRIMARY KEY IDENTITY(1,1), MusteriNo int CONSTRAINT musteriIliski FOREIGN KEY REFERENCES musteri (MusteriNo), SiparisTarihi datetime DEFAULT GETDATE(), Aciklama varchar(100), TeslimAdresi varchar(100), TeslimTarihi datetime ) B.Ü. Meslek Yüksek Okulu Bilgisayar Teknolojileri ve Programlama

30 Bilgisayar Teknolojileri ve Programlama
Kolon Adı Data Tipi Kısıtlamalar SiparisNo int Bu alan sipariş tablosunun ilgili alanı ile ilişkilidir. UrunNo Char(10) Bu alan urun tablosunun ilgili alanı ile ilişkilidir. Miktari Decimal(10,2) SatisFiyati Money B.Ü. Meslek Yüksek Okulu Bilgisayar Teknolojileri ve Programlama

31 Bilgisayar Teknolojileri ve Programlama
Sipariş Detay Tablosu CREATE TABLE SiparisDetay ( SiparisNo int CONSTRAINT SiparisIliski FOREIGN KEY REFERENCES Siparis (SiparisNo) , UrunNo char(10) CONSTRAINT UrunIliski FOREIGN KEY REFERENCES Urun (UrunNo), Miktari Decimal(10,2), SatisFiyati money ) B.Ü. Meslek Yüksek Okulu Bilgisayar Teknolojileri ve Programlama

32 Tabloya yeni kolon ekleme
Sipariş tablosuna AlisMi adında tinyint tipinde ve varsayılan değer 0 olan bir kolon ekleyiniz. ALTER TABLE Siparis ADD AlisMi tinyint DEFAULT 0 B.Ü. Meslek Yüksek Okulu Bilgisayar Teknolojileri ve Programlama

33 Tablolar arasında ilişki kurma
RELATION deyimi Birçok-İlişkisinde ÇOK Tarafında kullanılmalıdır. B.Ü. Meslek Yüksek Okulu Bilgisayar Teknolojileri ve Programlama

34 Bilgisayar Teknolojileri ve Programlama
1.yol Tabloların oluşturulma sırası Abone-paket Müşteri Görüşme B.Ü. Meslek Yüksek Okulu Bilgisayar Teknolojileri ve Programlama

35 Bilgisayar Teknolojileri ve Programlama
Tablo örneği CREATE TABLE abone_paket ( paket_no SMALLINT NOT NULL PRIMARY KEY IDENTITY(1,1), paket_adi VARCHAR(50), telekom SMALLINT, gsm_ici SMALLINT, diger_operator SMALLINT ) B.Ü. Meslek Yüksek Okulu Bilgisayar Teknolojileri ve Programlama

36 Bilgisayar Teknolojileri ve Programlama
Tablo örneği CREATE TABLE musteri ( telefon_no CHAR(10) PRIMARY KEY NOT NULL, adı VARCHAR(30), soyadı VARCHAR(30), Adresi VARCHAR(100), abonelik_paket_no SMALLINT DEFAULT 1 CONSTRAINT abone_paket_ilişki REFERENCES abone_paket (paket_no), faturalımı BIT DEFAULT 0 ) B.Ü. Meslek Yüksek Okulu Bilgisayar Teknolojileri ve Programlama

37 Bilgisayar Teknolojileri ve Programlama
Tablo örneği CREATE TABLE gorusme ( telefon_no CHAR(10) NOT NULL CONSTRAINT musteri_ilişki REFERENCES musteri (telefon_no) , aranan_telefon_no CHAR(13), arama_tarihi DATETIME, arama_saati DATETIME, sure INT ) B.Ü. Meslek Yüksek Okulu Bilgisayar Teknolojileri ve Programlama

38 Bilgisayar Teknolojileri ve Programlama
İlişki silme Musteri tablosu ile abone_paket tablosu arasındaki ilişkiyi silelim İlişkinin adı : abone_paket_ilişki İlişki müşteri tablosunda oluşturulmuştur. ALTER TABLE musteri DROP CONSTRAINT abone_paket_ilişki B.Ü. Meslek Yüksek Okulu Bilgisayar Teknolojileri ve Programlama

39 Bilgisayar Teknolojileri ve Programlama
İlişki silme Musteri tablosu ile görüşme tablosu arasındaki ilişkiyi silelim İlişkinin adı : musteri_ilişki İlişki görüşme tablosunda oluşturulmuştur. ALTER TABLE gorusme DROP CONSTRAINT musteri_ilişki B.Ü. Meslek Yüksek Okulu Bilgisayar Teknolojileri ve Programlama

40 Mevcut tabloya kolon ekleme
ALTER TABLE gorusme ADD aranan_telefon_alan_kodu CHAR(3) B.Ü. Meslek Yüksek Okulu Bilgisayar Teknolojileri ve Programlama

41 Bir tablodan kolon silme
ALTER TABLE gorusme DROP COLUMN arama_saati B.Ü. Meslek Yüksek Okulu Bilgisayar Teknolojileri ve Programlama


"Veri Tabanı Yönetim Sistemleri" indir ppt

Benzer bir sunumlar


Google Reklamları