3. Hafta Tablo İşlemleri BPR255 Veritabanı. Bu Derste Öğrenecekleriniz: 1. Tablo İşlemleri. 1.2. Kısıtlamalar (Constraints)



Benzer belgeler
3. Hafta Tablo İşlemleri BPR255 Veritabanı Yönetim. Bu Derste Öğrenecekleriniz: 1. Tablo İşlemleri

SP_RENAMEDB eski_isim, yeni_isim VEYA SP_RENAMEDB 'eski isim', 'yeni isim'

3. Hafta Tablo İşlemler BPR255 Ver tabanı. Bu Der ste Öğr enecekler n z: 1. Tablo İşlemler

SP_RENAMEDB eski_isim, yeni_isim VEYA SP_RENAMEDB 'eski isim', 'yeni isim'

Aşağıdaki tabloyu inceleyin. Yeni kayıt girme, var olan bir kaydı silme veya güncelleme işlemlerini bu tabloya göre yapacağız.

Aşağıdaki tabloyu inceleyin. Sorgulama işlemlerini bu tabloya göre yapacağız.

MSSQL. 4. Hafta Uygulama - 1 BPR255 Veritabanı CREATE DATABASE OKUL GO USE OKUL GO

Veritabanı sistemlerinde veri bütünlüğünü sağlayabilmek için CONSTRAINTS olarak adlandırılan bazı zorlayıcı ifadeler kullanılabilir.

Aşağıdaki tabloyu inceleyin. Sorgulama işlemlerini bu tabloya göre yapacağız.

Aşağıdaki şemaya dikkat edin. Sorgulamalarımızı genellikle bu şemaya göre yapacağız.

SORGULAR VE ÇEŞİTLERİ II

Tablolar Arası İlşikiler ve Alan Özellikleri Siparis.musteri_no musteri.musteri_no Siparis.urun_kodu musteri.urun_kodu

Aşağıdaki şemaya dikkat edin. Sorgulamalarımızı genellikle bu şemaya göre yapacağız.

5 SQL- Yapısal Sorgulama Dili. Veritabanı 1

Veri Tabanı Hafta Dersi

Tablolar Arası İlşikiler ve Alan Özellikleri. Şekil 1. Magaza veritabanının tabloları ve tablolar arasındaki ilişkiler

VERİTABANI Veritabanı Yönetimi

Bölüm 4: DDL Veri Tanımlama Dili

1. Hafta MS SQL Server 2008 Kurulum ve Tanıtımı BPR255 Veritabanı. Bu Derste Öğrenecekleriniz: Kurulum:

Veritabanına Uygulanması

Oracle da kullanılan veri tipleri:

EBE-368 Veri Tabanı Yönetim Sistemleri İlişkisel Model (The Relational Model)

KISITLAMALAR (CONSTRAINT)

Mysql Veritabanı Komutları

Yukarıdakilerden hangileri DML (Data Manipulation Language) ile gerçekleştirilir?

8 Oracle da tablo yapısı içinde otomatik artan kolon yoktur. (identity kolon

SUNGURLU MESLEK YÜKSEKOKULU 5. T-SQL

Veritabanı Tasarımı. NOT NULL ve UNIQUE Kısıtlamaları Tanımlama

Bu işleçlerin dışında, aşağıda belirtilen karşılaştırma işleçlerinden de yararlanılır.

Çok tablolu sorgulamalar

VERİ TABANI YÖNETİM SİSTEMLERİ I

3 Sql Veri Tipleri ve Örnek Veritabanı Tasarımı. Veritabanı 1

STORED PROCEDURE LER (Saklı Yordamlar)

SQL e Giriş. Uzm. Murat YAZICI

3 Sql Veri Tipleri. Veritabanı 1

SORGULAR. Öğr.Gör.Volkan Altıntaş

Veri Bütünlüğü ve Constraint ler. Veritabanı 1

«BM364» Veritabanı Uygulamaları

İNTERNET PROGRAMCILIĞI HAFTA. MYSQL ile VERİTABANI İŞLEMLERİ - 1. Hazırlayan Fatih BALAMAN. İçindekiler. Hedefler. Veritabanı Oluşturma, Silme

VERİ TABANI YÖNETİM SİSTEMLERİ I

TRIGGER. Trigger lar, tablo üzerinde tanımlanabilen ve bu tablo üzerinde bir işlem gerçekleştiğinde tetiklenen programlama ögeleridir.

SQL Komutları (2) Uzm. Murat YAZICI

Elbistan Meslek Yüksek Okulu GÜZ Yarıyılı Ara Öğr. Gör. Murat KEÇECĠOĞLU

VERİ TABANI YÖNETİM SİSTEMLERİ-II

Bilgisayar Teknolojileri Bölümü Bilgisayar Programcılığı Programı. Öğr. Gör. Cansu AYVAZ GÜVEN

2- Total de 8000 byte yer tutup 4000 karakter olarak kullanabildiğimiz tip aşağıdakilerden hangisidir?

SQL (Structured Query Language)

Data Programming SQL Language. Elbistan Meslek Yüksek Okulu Bahar Yarıyılı

VERİ TABANI ve YÖNETİMİ

-- işareti tek satırlık açıklamalarda kullanılır. Açıklama olarak yazılan satırın önüne konulması yeterlidir.

SQL PROGRAMLAMA. Bir batch, bir arada bulunan bir dizi SQL deyimidir. Batch ayıracı GO deyimidir.

SQL'e Giriş. SELECT Deyimi. SQL Komutları. 1. DDL (Data Definition Language - Veri Tanımlama Dili)

Veritabanı Tasarımı. Sütun Değerlerini Güncelleme ve Satırları Silme

YAPISAL SORGULAMA DİLİ (SQL)

SUNGURLU MESLEK YÜKSEKOKULU 5. T-SQL-2

Öğr. Gör. Cansu AYVAZ GÜVEN VERİTABANI-II. Değişken Tanımlama Ve Akış Kontrol Deyimleri

SQL'e Giriş. SELECT Deyimi. SQL Komutları. Yardımcı Deyimler

VERİ TABANI YÖNETİM SİSTEMLERİ-II

Bilgisayar Teknolojileri Bölümü Bilgisayar Programcılığı Programı. Öğr. Gör. Cansu AYVAZ GÜVEN

İLİŞKİSEL VERİTABANLARI

TEMEL SQL SORGU ÖRNEKLERİ. Yukarıdaki sorguyu yazıp çalıştırdığımızda db_market adında bir veritabanı oluşturulur.

Veritabanı Yönetim Sistemleri (Veritabanı Tasarımı) SQL (Structured Query Language)

ACCESS PLATFORMUNDA SQL

VERİTABANI ve YÖNETİMİ

Veritabanı Tarihi. 1960s: Bilgisayarlar artan saklama kapasiteleri ile birlikte firmalar tarafından karşılanabilir hale gelmeye başladı

BÖLÜM -7: TABLOLARI OLUŞTURMA VE YÖNETME

Veri Tabanı SQL Server ve Management Studio kurulum linkleri:

Veritabanı Dersi. Teoriden Pratiğe. Çağıltay N.E., Tokdemir G. Veritabanı Sistemleri Dersi -Bölüm XII: Durum Çalışması Çağıltay, N., Tokdemir, G.

VERİTABANI ORGANİZASYONU

SQL Kod ile Tablo Oluşturma

Herhangi bir tablonun tekrarlı veriler içerdiği duruma birinci normal form denir. Birinci normal formu Aşağıdaki tablo ile ele alacağız.

SQL Deyimleri. Öğr.Gör.Volkan ALTINTAŞ Volkanaltintas.com

KIRIKKALE ÜNİVERSİTESİ EĞİTİM FAKÜLTESİ BİLGİSAYAR VE ÖĞRETİM TEKNOLOJİLERİ EĞİTİMİ ANA BİLİM DALI VERİ TABANI YÖNETİM SİSTEMLERİ DERSİ FİNAL PROJESİ

Yaptığımız web sitelerinin daha kullanışlı olması için veritabanı sistemleri ile bağlantı kurup ihtiyaca göre verileri okuyup yazmasını isteriz.

Genel Kavramlar. Bilgisayar ortamında işlenebilecek durumda bulunan kayıtlar. Birbiri ile ilişkili veriler topluluğu ve veriler arası ilişkiler

Laboratuvar 6 TABLOLAR VE KISITLAR

Veri Tabanı Programlamaya Giriş

BİLİŞİM TEKNOLOJİLERİ

TESİ. indeks. söylenebilir?? bir ilişkidir d) Hiçbiri. veya somutlaştırılmış. düzeyidir? sağlayabilir? sına. d) Hepsi. olabilir? c) Verilerin d) Hepsi

Öğr. Gör. Cansu AYVAZ GÜVEN VERİTABANI-II. Değişken Tanımlama Ve Akış Kontrol Deyimleri

Fonksiyonlar istenilen deger tipinde dönüs yapabilir. INT, VARCHAR deger döndürebileceğiniz gibi bir tablo da döndürebilirsiniz.

HSancak Nesne Tabanlı Programlama I Ders Notları

Veritabanı Tasarımı. Tablo Değiştirme

Veritabanı Tasarımı. Düzenli İfadeler

VERİTABANI. SQL (Structured Query Language)

VERĐTABANI YÖNETĐM SĐSTEMLERĐ

MICROSOFT ACCESS DERS NOTLARI

Uzaktan Eğitim Uygulama ve Araştırma Merkezi

Veritabanına Giriş. Oğuzhan Ceylan. 19 Eylül 2011

T.C GAZİ ÜNİVERSİTESİ BİLİŞİM ENSTİTÜSÜ YÖNETİM BİLİŞİM SİSTEMLERİ ANA BİLİM DALI MS SQL KOMUTLARI VE MS SQL KOMUTLARI İLE İLGİLİ UYGULAMALAR

Laboratuvar 2 Tek Kayıt Fonksiyonları

Veritabanı Tasarımı. Birincil Anahtar, İkincil Anahtar ve Kontrol Kısıtlamaları

YAPISAL SORGULAMA DİLİ. BARIŞ ARIBURNU barisariburnu.com

10-Veri Tabanları.

VERİ TABANI I. Yrd.Doç.Dr. İlker ÜNAL. Teknik Bilimler Meslek Yüksekokulu

Ders Tanıtım Sunumu. Internet Programming II. Elbistan Meslek Yüksek Okulu Bahar Yarıyılı. Öğr. Gör. Murat KEÇECİOĞLU 1

Veritabanı. SQL (Structured Query Language)

BİLİŞİM TEKNOLOJİSİNİN TEMELLERİ DERSİ

EBE-368 Veri Tabanı Yönetim Sistemleri SQL

Transkript:

Bu Derste Öğrenecekleriniz: 1. Tablo İşlemleri 1.1. Tablo Oluşturma 1.2. Tablo Oluşturmada Kısıtlamalar Constraints 1.3. Tablo Silme a. NULL, NOT NULL b. PRIMARY KEY c. UNIQUE d. FOREIGN KEY e. CHECK f. DEFAULT g. IDENTITY 1. Tablo İşlemleri 1.1. Tablo Oluşturma En basit haliyle CREATE TABLE tablo_adı Alan_adı1 VERI_TİPİ, Alan_adı2 VERİ_TİPİ, Alan_adıN VERİ_TİPİ CREATE TABLE ÖĞRENCİLER NUMARA INT, ADI VARCHAR50, SOYADI VARCHAR50, [BÖLÜM KODU] CHAR4, CİNSİYET CHAR5, TELEFON CHAR16 Burada Öğrenciler adında bir tablo oluşturulacak. NUMARA alanı tamsayı tipinde olacak, ADI ve SOYADI ile belirtilen alanlar maksimum 50 karakter alabilecek, ancak hafızada kullanılan karakter sayısı kadar yer tutacaktır. BÖLÜM KODU, CİNSİYET ve TELEFON ile belirtilen alanlar maksimum 4, 5 ve 16 karakter alabilen yazılar olabilecek. NOT: SQL de eğer veri tabanı adı, tablo adı, alan adı gibi herhangi bir nesnenin ismi birden fazla kelimeden oluşuyorsa kelimeler köşeli parantezler [ ] arasına yazılır. Yani BÖLÜM KODU yerine [BÖLÜM KODU] kullanılabilir. Alan adları köşeli parantezler [ ] arasına yazıldıktan sonra alan adlarında istenilen karakter kullanılabilir. [123*adı-soyadı] geçerli bir alan adı tanımlamasıdır. 1.2. Kısıtlamalar Constraints Bir tablo oluştururken bazı alanlar zorunlu bazı alanların ise isteğe bağlı olması istenir. Bazı alanlar tekrarlanmamalı, bazı alanlar ise istenilen kadar tekrar edilebilmeli. Bazı alanlar tabloya girilmeden önce bazı kurallara uyuyor mu diye kontrol edilmeli. Bazı alanlar ise aslında başka tablodan referans alan alanlar olabiliyor. Bazı alanların ise başlangıçta varsayılan değerlerinin olmasını isteriz. İşte bütün bunları sağlamak için tablo oluştururken bazı kurallar uygulanır. a. NULL, NOT NULL: tablo oluştururken boş bırakılabilecek alanlar NULL ile boş bırakılamayacak yani zorunlu olan alanlar ise NOT NULL ile işaretlenmelidir. NULL ifadesi opsiyoneldir. Her hangi bir şey yazılmazsa NULL geçerlidir. Yani o alan istenirse boş bırakılabilecek. 1 Bartın MYO Bilgisayar Programcılığı Öğr. Gör. Bayram AKGÜL 2013-2014 Güz Dönemi

CREATE TABLE BÖLÜMLER BÖLÜM_KODU CHAR4 NOT NULL, BÖLÜM_ADI VARCHAR50 NOT NULL, ADRES VARCHAR50 NULL Burada Bölümler adında bir tablo oluşturulacak. BÖLÜM_KODU ile belirtilen alan maksimum 4 karakter alabilen bir yazı olabilecek ve boş bırakılamayacak. BÖLÜM_ADI ile belirtilen alan ise maksimum 50 karakter alabilecek, ancak hafızada kullanılan karakter sayısı kadar yer tutacaktır. Bu alan da bölüm_kodu gibi boş bırakılamayacak. Çünkü her ikisi de NOT NULL ile işaretlenmişler. ADRES ile belirtilen alan ise maksimum 50 karakter alabilecek ve isterse boş bırakılabilecek. Çünkü NULL ile işaretlenmiş. Adres alanı da bölüm_adı gibi kullanılan karakter sayısı kadar hafızada yer tutacaktır. b. PRIMARY KEY: Yukarıdaki BÖLÜMLER tablosuna dikkat edilirse BÖLÜM_KODU ile belirtilen alan aslında her bölüm için özeldir ve tekrarlanmamalıdır. Veritabanı yönetim sistemleri I dersinden hatırlayacağınız üzere buna birincil anahtar diyorduk. Tabloyu oluştururken aslında bunu belirtebiliriz. Bir alanın birincil anahtar olduğunu belirtmek için o alan için tip belirtecinden sonra PRIMARY KEY anahtar sözcüğü kullanılır. Not: Birincil Anahtar: Tablodaki bir kaydı diğer kayıtlardan ayıran ve tekrara izin vermeyen alandır. CREATE TABLE BÖLÜMLER [BÖLÜM KODU] CHAR4 PRIMARY KEY NOT NULL, [BÖLÜM ADI] VARCHAR50 NOT NULL, [ADRES] VARCHAR50 NULL Yukarıda dikkat edilirse [BÖLÜM KODU] alanı tanımlanırken veri tipi belirtildikten sonra PRIMARY KEY kullanılmıştır. Bu durum, [BÖLÜM KODU] alanının birincil anahtar olduğunu ifade ediyor. Bir tabloda sadece bir tane birincil anahtar bulunabilir. Ama bu bir tane birincil anahtar birden fazla alandan oluşabilir. Böyle bir durumda PRIMARY KEY tanımlaması aşağıdaki gibi yapılır. CREATE TABLE SINAVLAR [DERS KODU] CHAR6 NOT NULL, [ÖĞRENCİ NO] INT NOT NULL, VİZE TINYINT NULL, FİNAL TINYINT NULL, CONSTRAINT PK_SINAVLAR PRIMARY KEY[DERS KODU], [ÖĞRENCİ NO] 2 Bartın MYO Bilgisayar Programcılığı Öğr. Gör. Bayram AKGÜL 2013-2014 Güz Dönemi

c. UNIQUE: Her ne kadar birincil anahtarlar ile tekrarı önleyebilsek de aslında birincil anahtar olmayan fakat yinede tekrar etmesini istemediğimiz alanlar olabilir. Böyle durumlar için UNIQUE anahtar sözcüğü kullanılır. Aşağıdaki örneği inceleyiniz. Çalışanlar adında bir tablo tanımlanmıştır. Bu tabloda birincil anahtar olabilecek NUMARA ve [TC NO] adında iki alan mevcut. Ancak biz sadece birini birincil anahtar olarak belirliyoruz, fakat diğerinin de tekrarlanmamasını istiyoruz. Çalışanlar tablosunda görüldüğü gibi [TC NO] alanı için veri tipi tanımlamasından sonra UNIQUE anahtar sözcüğü yazılmıştır. Bunun anlamı; [TC NO] birincil anahtar değil ancak yinede tekrarlanmasına izin verilmeyecektir. Sadece bir defa girilmesine izin verilecektir. CREATE TABLE ÇALIŞANLAR NUMARA INT PRIMARY KEY NOT NULL, [TC NO] DECIMAL11 UNIQUE NOT NULL, İSİM VARCHAR25 NOT NULL, SOYİSİM VARCHAR25 NOT NULL, TELEFON CHAR16 NULL d. FOREIGN KEY: Şimdi de aşağıdaki öğrenciler tablosunu düşünün. Bu tabloda dikkat edilirse BÖLÜM alanı aslında başka bir tablodan referans alıyor. Veritabanı Yönetim sistemleri I dersinden de hatırlayacağınız üzere buna referans anahtar veya dış anahtar diyorduk. Yani ÖĞRENCİLER tablosundaki BÖLÜM alanı aslında BÖLÜMLER tablosundaki birincil anahtar olan [BÖLÜM KODU] alanına referans ediyor. Öğrenciler tablosu için SQL kodunu yazacak olursak aşağıdaki gibi olacaktır. CREATE TABLE ÖĞRENCİLER NUMARA INT PRIMARY KEY NOT NULL, İSİM VARCHAR25 NOT NULL, SOYİSİM VARCHAR25 NOT NULL, BÖLÜM CHAR4 FOREIGN KEY REFERENCES BÖLÜMLER[BÖLÜM KODU] ON DELETE CASCADE ON UPDATE CASCADE NOT NULL, TELEFON CHAR16 NULL Yukarıdaki örnekte referans verilirken FOREIGN KEY kısmı isteğe bağlıdır. Yazılmazsa da olur. Önemli olan REFERENCES anahtar sözcüğünün yazılmış olmasıdır. Bir tabloda sadece bir tane birincil anahtar bulunabilir, fakat birden fazla yabancı anahtar bulunabilir. Bu durumda her referans için ayrı referans verilir. Yukarıdaki örnekte BÖLÜM alanının referansı belirtildikten sonra ON DELETE CASCADE ve ON UPDATE CASCADE ifadeleri kullanılmış. Bunun anlamı: Eğer referans edilen kayıt silinirse veya güncellenirse bu tabloda da aynı değişikliği yap demektir. Örneğin bölümler tablosundaki bölüm kodu BPR1 olan 3 Bartın MYO Bilgisayar Programcılığı Öğr. Gör. Bayram AKGÜL 2013-2014 Güz Dönemi

bölüm silinirse BPR1 bölümüne kayıtlı bütün öğrencilerde silinecektir. Eğer BPR1 olan bölüm kodu BBP1 olarak değiştirilirse öğrenciler tablosunda bölüm kodu BPR1 olan bütün öğrenciler için bölüm BBP1 olarak güncellenecektir. Eğer böyle bir durum istemiyorsak, yani bölümler tablosundan bir bölüm sildiğimizde öğrenciler tablosundaki o bölüme ait öğrencilerin silinmesini istemiyorsak ON DELETE CASCADE yerine ON DELETE NO ACTION yazmalıyız. Aynı durum güncelleme için de geçerlidir. Yani bölümler tablosundan bir bölüm kodu güncellenince, öğrenciler tablosundaki o bölüme kayıtlı öğrencilerin bölüm kodu güncellenmesin istiyorsak ON UPDATE CASCADE yerine ON UPDATE NO ACTION yazmamız gerekecektir. Eğer bölümler tablosundaki bir kayıt silinince öğrenciler tablosunda o bölüme kayıtlı öğrenciler silinmesin fakat bölüm kodu güncellenince öğrenciler tablosundaki o bölümün kodları güncellensin istiyorsak bu durumda ON DELETE NO ACTION ON UPDATE CASCADE şeklinde yamalıyız. Aynı mantık tersi için de geçerlidir. Referans anahtar tanımlanırken aşağıdaki kural göz önüne alınır. ALAN_ADI VERİ_TİPİ [FOREIGN KEY] REFERENCES REFERANS_TABLO_ADIREFERANS_ALAN_ADI ON DELETE { CASCADE NO ACTION} ON UPDATE { CASCADE NO ACTION} Foreign Key Yabancı anahtar tanımlanırken alan tanımından sonra yazılabildiği gibi daha sonrada aşağıdaki gibi de yazılabilirdi. CONSTRAINT FK_BÖLÜM FOREIGN KEY BÖLÜM REFERENCES BÖLÜMLER[BÖLÜM KODU] ON DELETE CASCADE ON UPDATE CASCADE Yani yukarıdaki tablo aşağıdaki gibi de tanımlanabilirdi. CREATE TABLE ÖĞRENCİLER NUMARA INT PRIMARY KEY NOT NULL, İSİM VARCHAR25 NOT NULL, SOYİSİM VARCHAR25 NOT NULL, BÖLÜM CHAR4 NOT NULL, TELEFON CHAR16 NULL, CONSTRAINT FK_BÖLÜM FOREIGN KEY BÖLÜM REFERENCES BÖLÜMLER[BÖLÜM KODU] ON DELETE CASCADE ON UPDATE CASCADE e. CHECK: Öğrenciler tablosunda TELEFON alanına dikkat edin. Telefon numarası için 16 karakter yer ayrılmış. Telefon yazılırken maksimum 16 karakterlik yer kullanıldıktan sonra istenildiği şekilde girilebilir. Aslında bu istenen bir durum değildir. Örneğin kimisi numaralar arasına nokta, kimisi tire veya bir başkası boşluk bırakabilir. Dahası, kimisi şehir kodlarını parantezler arasına alırken kimisi almaz, kimisi başına sıfır eklerken kimisi de eklemez. Bütün bunlar aslında istenmeyen durumlardır. Sıralamaların veya aramaların doğru şekilde yapılabilmesi için kayıtların aynı tipte olması gerekmektedir. Böyle durumları kontrol etmek için CHECK anahtar sözcüğü kullanılmaktadır. Aşağıda telefon için örnek bir kontrol yazılmıştır. TELEFON CHAR16 CHECK TELEFON LIKE '[0][0-9][0-9][0-9] [0-9][0-9][0-9] [0-9][0-9] [0-9][0-9]' 4 Bartın MYO Bilgisayar Programcılığı Öğr. Gör. Bayram AKGÜL 2013-2014 Güz Dönemi

Bir başka örnek olarak kan gruplarını verebiliriz. Bilindiği gibi bir insanın kan grubu A, B, 0 veya AB olabilir. Bir diğer örnek olarak ta cinsiyet olabilir. Cinsiyet sadece bay, bayan şeklinde yazılsın istiyorsak bunları veritabanına girmeden önce bunlar haricinde bir şeyin yazılmış olup olmadığını aşağıdaki gibi kontrol edebiliriz. KANGRUBU CHAR2 CHECKKANGRUBU IN 'A','B','0','AB' NOT NULL CİNSİYET CHAR5 CHECKCİNSİYET IN 'BAY', 'BAYAN' NOT NULL Bir alan kontrollü oluşturulmak istenince aşağıdaki kural göz önüne alınmalıdır. ALAN_ADI VERİ_TİPİ CHECK{KOŞUL İFADESİ} UYARI: Koşul ifadeleri daha sonra ayrıntılı bir şekilde işlenecektir. CHECK anahtar sözcüğü alan tanımlanırken yazılabildiği gibi aşağıdaki şekilde de tanımlanabilir. Görüldüğü gibi koşul ifadesi maaş alanı tanımladıktan sonra başka bir satırda yazılmış. CREATE TABLE KİŞİLER NUMARA INT PRIMARY KEY, ADI VARCHAR25 NOT NULL, SOYADI VARCHAR25 NOT NULL, MAAŞ SMALLMONEY NOT NULL, TELEFON CHAR16 NULL, CINSIYET BIT NULL, CONSTRAINT CHK_MAAŞ CHECKMAAŞ BETWEEN 1000 AND 2000 f. DEFAULT: bazen bazı alanların varsayılan değerlerinin olmasını isteriz. Yani eğer farklı bir şey belirtmiyorsak varsayılan değer otomatik olarak kayıt için girsin isteriz. CREATE TABLE KİŞİLER NUMARA INT PRIMARY KEY, ADI VARCHAR25 NOT NULL, SOYADI VARCHAR25 NOT NULL, BÖLÜM CHAR4 DEFAULT 'BPR1' NOT NULL Bu örnekte bölüm için bir veri belirtmiyorsak bölüm alanına varsayılanda BPR1 girilecektir. DEFAULT anahtar sözcüğü alan tanımlanırken yazılabildiği gibi aşağıdaki şekilde CONSTRAINT ile beraber de tanımlanabilir. CREATE TABLE KİŞİLER NUMARA INT PRIMARY KEY, ADI VARCHAR25 NOT NULL, SOYADI VARCHAR25 NOT NULL, BÖLÜM CHAR4 NOT NULL, CONSTRAINT DEF_BOLUM DEFAULT 'BPR1' FOR BÖLÜM 5 Bartın MYO Bilgisayar Programcılığı Öğr. Gör. Bayram AKGÜL 2013-2014 Güz Dönemi

g. IDENTITY: Sipariş numarası gibi bazı numaraların otomatik olarak üretilmesini isteyebiliriz. Access teki otomatik sayı alanını hatırlayınız. Böyle durumlar için IDENTITY anahtar sözcüğü kullanılır. IDENTITY kullanılırken yanına parantez içerisinde başlama ve artış miktarı belirtilebiliyor. Eğer bir şey belirtilmezse 1 den başlayıp birer birer arttıracaktır. CREATE TABLE SİPARİŞLER [SİPARİŞ NO] INT PRIMARY KEY IDENTITY100,1, [ÜRÜN ADI] VARCHAR25 NOT NULL, [SİPARİŞ TARİHİ] DATETIME NOT NULL Yukarıdaki örnekte sipariş numarası 100 den başlayacak ve her kayıt için birer birer arttırılacaktır. NOT: Herhangi bir tabloda sadece bir identity alan tanımlanabilir. 1.3. Tablo Silme Tablo silmek çok basittir. DROP TABLE tablo_adı komutu yazılarak çalıştırılır. İsmi yazılan Tablo tüm kayıtlarıyla yok edilir. Örnek: DROP TABLE ÖĞRENCİLER Burada öğrenciler tablosu tüm kayıtlarıyla yok edilecektir. 6 Bartın MYO Bilgisayar Programcılığı Öğr. Gör. Bayram AKGÜL 2013-2014 Güz Dönemi