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



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

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

«BM364» Veritabanı Uygulamaları

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

SORGULAR VE ÇEŞİTLERİ II

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

KISITLAMALAR (CONSTRAINT)

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

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

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

İLİŞKİSEL VERİTABANLARI

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

Veri Tabanı Hafta Dersi

Bölüm 1: Veritabanı Yönetim Sistemlerine Giriş

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

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

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

VERİTABANI ORGANİZASYONU

Hurda Tanımla. Hurda Girişi Yap. Teçhizatın Son Sökülme Bilgilerini İş Takip Sisteminden Al

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

VERİ TABANI ve YÖNETİMİ

Oracle da kullanılan veri tipleri:

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

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

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

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

VERİTABANI. SQL (Structured Query Language)

İngilizce'de Relational Database Management System (RDBMS) olarak ifade edilir.

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

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

Veritabanına Uygulanması

BİLİŞİM TEKNOLOJİLERİ

SQL e Giriş. Uzm. Murat YAZICI

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

Maliye Uzman Yardımcılığı Giriş Sınavı (Bilişim) -16 Mart 2014 A

Maliye Uzman Yardımcılığı Giriş Sınavı (Bilişim)-16 Mart 2014 B

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

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.

SQL Komutları (2) Uzm. Murat YAZICI

Veri Tabanı Programlamaya Giriş

Tavsiye Edilen Önhazırlık Temel SQL Server 2000 bilgisi edinmek.

Mysql Veritabanı Komutları

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

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

Pursaklar İMKB Teknik ve Endüstri Meslek Lisesi

SQL TRIGGERS (Tetikleyiciler)

VERİTABANI Veritabanı Yönetimi

1 Temel Kavramlar. Veritabanı 1

Veritabanlarına ve SQL'e Giriş. Devrim GÜNDÜZ. Teknoloji Destek Merkezi --

ÜNİTE NESNE TABANLI PROGRAMLAMA I. Uzm. Orhan ÇELİKER VERİTABANI SORGULARI İÇİNDEKİLER HEDEFLER

20461C Querying Microsoft SQL Server Modül Seviye Belirleme Testi

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

1 Temel Kavramlar. Veritabanı 1

TETİKLEYİCİ. Tetikleyici Ne Zaman Kullanılır? Çeşitli amaçlara uygun olarak tetikleyiciler kullanılabilir.

T.C. MİLLÎ EĞİTİM BAKANLIĞI MEGEP (MESLEKİ EĞİTİM VE ÖĞRETİM SİSTEMİNİN GÜÇLENDİRİLMESİ PROJESİ) BİLİŞİM TEKNOLOJİLERİ VERİ BÜTÜNLÜĞÜ

Veritabanı Tasarımı. DML İşlemleri ve Görünümler

SQL veri tabalarına erişmek ve onları kullanmak için geliştirilmiş bir lisandır.

Veritabanı Tasarımı. Tablo Oluşturma

EBE-368 Veri Tabanı Yönetim Sistemleri SQL

VİEW (SANAL TABLO) 1. View Nedir? 2. View ler ile Çalışmak 3. View Oluşturmanın Yararları Veri güvenliği; Birim dönüştürmeleri;

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

Ders Adı Kodu Yarıyılı T+U Saati Ulusal Kredisi AKTS

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

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

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

Veritabanı Yönetim Sistemleri (Veritabanı Tasarımı) İlişkisel Veritabanı Modeli

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

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

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

VERİTABANI ve YÖNETİMİ

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.

ADO.NET ve DATASET. Öğr. Gör. Emine TUNÇEL Kırklareli Üniversitesi Pınarhisar Meslek Yüksekokulu

SQL sorguları çalıştırıldığında veriler tablo üzerinden iki yöntemle alınır.

EXISTS VE NOT EXISTS fonksiyonları

Veri Tabanı Hafta Dersi

Öğr.Gör.Murat KEÇECĠOĞLU 27 May. 28 May Elbistan Meslek Yüksek Okulu Bahar Yarıyılı

HASTANE OTOMASYONU VERİ TABANI YÖNETİM SİSTEMLERİ TEMEL VERİTABANI KAVRAMLARI

10 Birden Fazla Tablo Üzerinde Sorgulama

SUNGURLU MESLEK YÜKSEKOKULU 5. T-SQL

VERİTABANI YÖNETİMİ. İlişkisel Veritabanı 4.HAFTA. Veritabanı Yönetimi Prof. Dr. İbrahim Çil

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

License. Veri Tabanı Sistemleri. Konular. Bağıntı Modeli Dr. E. F. Codd, 1970 veri bağıntılar şeklinde modellenir: α A B C...

İNTERNET PROGRAMLAMA 2 A S P. N E T. Marmara Teknik Bilimler MYO / Hafta 5 Veri Tabanı İşlemleri

Veritabanı Tasarımı. İlişkisel Veritabanı Kavramlarına Giriş

5 Sorgulama İşlemleri. Veritabanı 1

DML işlemleri. Elbistan Meslek Yüksek Okulu Bahar Yarıyılı May Öğr. Gör. Murat KEÇECĠOĞLU

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

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

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

Maltepe Üniversitesi Bilgisayar Mühendisliği Bölümü Veri Tabanı ve Yönetimi (BİL 301)

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

ACCESS PLATFORMUNDA SQL

Cursor. Bir veri tipi olarak da ele alınabilen Transact-SQL Sunucu Cursor şu aşamalardan geçirilerek kullanılır.

Veri tabanı içinde bulunan tablolardakibazı sütunlarda bulunan bilgilerin, herkes tarafından görülmesi istenmeyebilir.

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

Çok tablolu sorgulamalar

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

2-Veritabanı Yönetim Sistemleri/ Temel Kavramlar

ADO.NET Entity. Framework. Temel Kavramlar

Transkript:

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

Veri Bütünlüğü Veri bütünlüğü, bir tabloda veri güncelleme, silme veya ekleme gibi işlemler yapılırken diğer tablo ya da tablolardaki verilerin birbirleriyle uyum içinde olması, dolayısıyla veri tutarlılığının kaybolmamasının garanti altına alınması demektir. Programsal Veri Bütünlüğü Tanımsal Veri Bütünlüğü 2

Veri Bütünlüğü Programsal Veri Bütünlüğü: Trigger ler, Stored Procedurler, İş seviyesi Uygulamalar Transaction dan sonra devreye giriyor veya, bir sorgu daha kullanarak kontrol ediyor. Çok kaynak tüketir. Her türlü kuralı denetleyebilir. Tanımsal Veri Bütünlüğü Constraint; Tablo ile birlikte derlenir ve Transaction dan önce devreye girer. Etkin ancak dinamik değil, her sorunu çözemeyebilir. Primary Key Constraint Unique Constraint Check Constraint Default Constraint Foreign Key Constraint Rule = Check Constraint Tablo dışında nesne. Default = Default Constraint Tablo dışında nesne. 3

Constraintler Primary Key Constraint Daha önce girilmemiş değerler girmeye zorlar, her satırın tekilliğini sağlar. NULL kalamaz. Her tabloda en fazla 1 adet bulunabilir. SQL Server Tarafından, arka planda Unique Indeks olarak gerçeklenir. 4

Unique Constraint Constraintler Bir tabloda birden fazla sütunda tanımlanabilir. SQL Server tarafından, arka planda Unique Indeks olarak gerçeklenir. NULL kalabilir ama NULL değil ise, mutlaka girilmemiş verilerden gelmelidir.(ya NULL kal ya tekrarlama) Örnek:Kişi kimlik bilgilerinin tutulduğu bir tabloda kişinin sicilnumarası, tckimliknumarası, verginumarası, sosyalguvenliknumrası gibi bilgiler kişiye özel bilgileridir. Fakat bu bilgilerden yanlızca bir tanesi primary key olabilir. Diğer kişiye özel bilgilerin tekrarını engellemek için unique key tanımlanır. 5

Constraint ler Check Constraint =RULE Belli bir formata uygun veri girişi için, Aynı tablonun aynı satırında iki farklı sütun değerini karşılaştırmak için, Örnek1: Doktor bilgilerinin tutulduğu bir tabloda doktorun isebaşlamatarihi ve istenayrılmatarihi karşılaştırılmalıdır. Çünkü işten ayrılma tarihi başlama tarihinden önce olamaz. Örnek2: Öğrenci notlarının tutulduğu bir tabloda bir dersten alınabilecek not aralığının 0 ile 100 arasında olmasının kontrolü gibi. 6

Constraintler Default Constraint = DEFAULT Bir sütuna girilmek üzere değer verilmezse, girilebilecek bir standart değer tanımlar. Sadece INSERT işleminde devreye girer. Örnek :tbl_ogrenci tablosunda sisteme yeni bir öğrenci ekleneceği zaman ogrencikayittarihini günün tarihi olarak eklenmesi. Böyle bir durumun gerçekleşmesi için kayıt tarihinin sisteme eklenmemesi gerekmektedir. 7

Constraint ler Foreign Key Constraint Bir tablodaki bir sütuna ait değerlerin, başka bir tablonun belli sütunundan gelmesini denetler. CASCADE UPDATE, CASCADE DELETE özelliği var. Örnek; OgrenciNot tablosunda bulunan ogr_id Ogrenci tablosundaki ogr_id ile ilişkilendirilmemesi durumunda öğrenci tablosunda bulunmayan bir öğrenciye ait not sisteme kayıt edilebilir. 8

Tablo Seviyeli Kısıtlamalar Veri Bütünlüğü Satır Bazlı Sütun Bazlı Referans Bütünlüğü Kısıtlayıcı (Constraint) PRIMARY KEY UNIQUE CHECK DEFAULT REFERANS (PK-FK) CHECK FOREIGN KEY Kontrol Bir satırın bir alanı için,null alamaz. Girilmiş değerler girilemez, arka planda otomatik indeks tanımlanır. PK dan başka alanlara girilen değerlerin tekrar girilememesini sağlar. NULL kalabilir. Bir sütuna girilen değerler belli kümeden mi geliyor, Belli koşullara uygun mu? Büyüklük-küçüklük-format vs. Bir sütun için, INSERT yapılırken, değer yok ise belli bir sabit değer atar. Bir sütuna girilen değerlerin başka bir tablonun başka bir sütunundan geliyor olması Bir tablonun, bir sütuna girilen değerler, diğer sütunlara girilen değerlerle çelişiyor mu?(aynı satır için) Bir sütuna girilen değerlerin başka bir tablonun başka bir sütunundan geliyor olması 9