KISITLAMALAR (CONSTRAINT)

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

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

VERİTABANI ORGANİZASYONU

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

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

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

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

BİLGİSAYAR 3 MOLEKÜLER BİYOLOJİ VE GENETİK BÖLÜMÜ YARD. DOÇ. DR. MEHTAP YALÇINKAYA /

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

İLİŞKİSEL VERİTABANLARI

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

Veri Tabanı Hafta Dersi

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

EBE-368 Veri Tabanı Yönetim Sistemleri SQL

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

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

10-Veri Tabanları.

Oracle da kullanılan veri tipleri:

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

SORGULAR VE ÇEŞİTLERİ II

VERİTABANI KAVRAMINA GİRİŞ

Veritabanına Uygulanması

Veritabanı Tasarımı. Basit Eşleme: Dönüşüm İşlemi

Mysql Veritabanı Komutları

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

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

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

Birden Çok Tabloda Sorgulama (Join)

Pursaklar İMKB Teknik ve Endüstri Meslek Lisesi

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

ACCESS PLATFORMUNDA SQL

SQL e Giriş. Uzm. Murat YAZICI

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.

11TA Veritabanı Organizasyonu Dersi MS ACCESS Ders Notları

BİL Bilişim Teknolojileri. Access

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

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

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

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

UZAKTAN EĞİTİM MERKEZİ

1 Temel Kavramlar. Veritabanı 1

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

=A1+A2-A3, =A1*A2/A3,

Oracle Database 11g: Introduction to SQL

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

1 Temel Kavramlar. Veritabanı 1

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

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

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

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

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

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

Veri Tabanı Hafta Dersi

Microsoft SQL Server 2008 Oracle Mysql (Ücretsiz) (Uygulamalarımızda bunu kullanacağız) Access

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

Örnek: HAFTA12B isimli bir kullanıcı tanımlayalım. Bu kullanıcıya gerekli yetkileri verelim.

Veritabanı Yönetim Sistemleri

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

VERİTABANI Veritabanı Tasarımı

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

Veritabanı Tasarımı. SQL Deyimi Anatomisi

Veri Tabanı Yönetim Sistemleri Bölüm - 4

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

SQL Query and Table Application

Veri Tabanı Hafta Dersi

İLİŞKİSEL VERİTABANI. İlişkisel veritabanlarının ortak özelliği verilerin tablolar aracılığı ile tutulmasıdır.

Veri Tabanı Örnekleri

«BM364» Veritabanı Uygulamaları

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

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

08118 Veri Tabanı I. Database Management System. Elbistan Meslek Yüksek Okulu Bahar Yarıyılı. Öğr. Gör. Murat KEÇECĠOĞLU

Veritabanı Tasarımı. Yapay, Birleşik ve İkincil UID ler

Veritabanı Tasarımı. Veri Türleri Kullanma

Veri Tabanı Yönetim Sistemleri Bölüm - 3

İlişkisel Veri Tabanları I

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

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

VERİTABANI Veritabanı Yönetimi

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

BMB202. Veritabanı Yönetimi Ders 5. İlişkisel Cebir ve SQL. Erdinç Uzun NKÜ Çorlu Mühendislik Fakültesi Bilgisayar Mühendisliği Bölümü

Laboratuvar 2 Tek Kayıt Fonksiyonları

Coğrafi Bilgi Sistemlerine Giriş. Ünite 5 - Veri Tabanı Yönetim Sistemleri

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

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

SUNGURLU MESLEK YÜKSEKOKULU 5. T-SQL

1. VERİ TABANI KAVRAMLARI VE VERİ TABANI OLUŞTUMA

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

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

Çok tablolu sorgulamalar

MICROSOFT ACCESS DERS NOTLARI

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

1. Excel Dönüşümü : 2. Rapor Master Tanımları :

:::: Germencik Halk Eğitimi Merkezi Bilgisayar Kurs Notları Hüseyin OKUL ::::

Veritabanı Tasarımı. Tablo Oluşturma

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

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

ORACLE DA KÜRSÖRLER. Gerekli sistem değişkenleri

Access Veritabanında önce tablolar işlemleri yapılır. Tablo yaratmak için kullanabilecek 3 seçenek bulunmaktadır.

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.

Transkript:

KISITLAMALAR (CONSTRAINT) Tablo alanlarına veri girişini kontrol etmeyi amaçlayan düzenlemelerdir. Bir alana girilen değerleri sınırlayan bu düzenlemeler kullanıcı hataları açısından önemlidir. Verilerin doğruğ girilmesini zorunlu kılar. Kullanıcının hata yapmasını engeller. Örneğin öğrencilere ait not bilgilerini tutan bir alana 0 ile 100 arasında bir değerğ girilmesi şeklinde bir kısıtlama yapılmışsa yp ş kullanıcınınfarklı bir değer girilmesi engellenmiş olur. Kaynak : Veritabanı ve uygulamaları Yılmaz Kaya, Ramazan Tekin

KISITLAMALAR (CONSTRAINT) Şekilde görüldüğü gibi vize alanına 0 ile 100 arasında değerler girilmesi gerektiği belirtilmiştir. Farklı değerlerin girilmesi durumunda Geçerlilik Metni bölümündeki mesaj yazdırılacaktır.

BİRİNCİL ANAHTAR (PRIMARY KEY) Bu kısıtlama tanımlandığı alan için verilerin her kayıtta farklı olacağını belirtir. Örneğin OGRENCINO gibi bir alan için böyle bir tanımlama yapılmış ise bu alandaki tüm kayıtların birbirinden farklı olmasını sağlayacaktır. Tüm kayıtlar benzersiz olacaktır. Birincil Anahtar (Primary Key) tanımlı bir alana veri girilmesi zorunludur, boş, değersiz ğ (NULL) olamaz. Birincil anahtar, ilişkisel veritabanı sistemlerinin güçlü özelliklerinden biridir. Tanımlandığı alandaki verilerin benzersiz durmasını sağlar. Bir tabloda en çok bir tane birincil anahtar bulunabilir. Kaynak : Veritabanı ve uygulamaları Yılmaz Kaya, Ramazan Tekin

BİRİNCİL ANAHTAR (PRIMARY KEY) MS Access de birincil anahtar tablonun tasarım aşamasında ilgili alan sağ tıklanarak eklenebilir.

TEKİL (UNIQUE) KISITLAMASI Tekil (Unique) kısıtlaması tanımlandığı alandaki verilerin tekil, benzersiz olmasını sağlar. Birincil anahtar (Primary Key) kısıtlamasına benzer. Ancak bu kısıtlama alanının NULL olmasına ii izinverilir. ili Birincil anahtarı (Primary Key) olmayan alanlarda yinelenen verilerin girilmemesi için tanımlanırlar. Örneğin OGRENCILER tablosundaki OGRENCINO sütununda her öğrencinin numarasınınfarklı olması gerekir. Yani tüm numaralar benzersizdir. Böyle bir alanda Tekil (Unique ) sınırlaması tanımlanabilir.

YABANCI ANAHTAR (FOREIGN KEY) Tablolar arasındaki ilişkileriş tanımlayan bir kısıtlamadır. Birincil anahtar (Primary Key) tanımlı bir alan Yabancı Anahtar (Foreign Key) tanımlı bir başka tablodaki alana bağlanabilir. Birincil anahtar (Primary Key) tanımlı bir alanda bulunan bir değeri bir başka tablodaki Yabancı Anahtar (Foreign Key) tanımlı bir alanda bulunan bir grup kayıta bağlayan yapılardır. Tablolar arasındaki bilgi tutarlılığının sağlanması açısından önemli Tablolar arasındaki bilgi tutarlılığının sağlanması açısından önemli kısıtlamalardır.

YABANCI ANAHTAR (FOREIGN KEY) Şekilde görüldüğü gibi birinci tablodaki BOLUMNO ikinci tablonun BOLUMKOD alanı ile ilişkilidir. BOLUMNO sütunu ii için bulunduğu tabloda birincil anahtar tanımlanmıştır. Yani BOLUMNO bu tabloda tüm kayıtlar için farklı değerlerden oluşacaktır. Dikkat edilirse tüm kayıtlar için BOLUMNO farklıdır. İkinci tablonun BOLUMKOD alanı için yabancı anahtar tanımı vardır. Yani buradaki değerler ilişkili olduğu birinci tablodaki BOLUMNO alanına göre kayıtlar girilecektir. İkinci tablo için ayrıca istenilen bir alan için birincil anahtar tanımlanabilir. Görüldüğü gibi OGRENCINO alanı için birincil anahtar tanımlanmıştır.

VARSAYILAN (DEFAULT) KISITLAMASI Tanımlandığı alana bir değerin girilmemesi durumunda alan sabit varsayılan bir değerin atanmasını sağlayan kısıtlamadır. Tanımlanan bir alana bir değer girilmediğinde alanın NULL olmasını engeller yani değer girilmediğinde alanın değersiz kl kalmasını engellemek ii için bizimi belirlediğimiz bir değerin otomatik girilmesini sağlar. ğ

NOT NULL KISITLAMASI Tanımlandığı alana veri girişinin zorunlu olduğunu belirtir. Alanın boş, değersiz (NULL) olamayacağını belirtir. Tablonun oluşturma anında kullanılabilir. CREATE TABLE PERSONEL ( PERSONELNO INTEGER NOT NULL, AD CHAR(20) SOYAD CHAR(20), ) Oluşturulan PERSONEL tablosunun PERSONELNO alanına veri girişi zorunludur. Bu alan boş olamaz.

TABLOLARA VERİ GİRİŞİNİ MASKELEMEK Sayı veri tiplerinde i 999-9999-9999999 maskesini i ele alalım. l 9 rakkamı ile sadece 0 ila 9 arasındaki sayıların basamağa yazılabileceğini belirtiyoruz. 9, ayrıca isteğe bağlı girişi ifade eder. Yani yukarıdaki 10 basamaklı maske ile maskelenmiş bir alana 3 basamaklı bir sayıda girilebilir. Maskede 9 yerine 0 sayısı kullanılmış olsaydı 10 basamağın tümünü de girmek zorunda kalırdık. Özetle 9, isteğe bağlı girilen sayı basamağını, 0 ise girilmesi zorunlu olan basamağı temsil eder. işareti ise sadece görsel olarak veri girişini kolaylaştırır. Veri veritabanında sayı olarak tutulur. Aşağıda Access te kullanılan maske çeşitleri tablolanmıştır. Zorunlu sayı 0 İsteğe bağlı sayı 9 Değer- boşluk veya + - değerleri # Zorunlu Harf L İsteğe bağlı harf? Harf veya sayı girişi Zorunlu karakter boşluk İsteğe bağlı karakter boşluk Büyük karakter Küçük karakter a & C >& <& Sola yaslama Format:! Sağa yaslama Format: *

TABLOLARA VE SÜTUN ADLANDIRMA KURALLARI Tablo ve sütunlara isimi verilirken şu kurallara uymamız, daha anlaşılır l bir tasarım yapmamızı sağlayacaktır. Tablo içindeki verilere uygun bir tablo ismi verilmesi mantıklı olacaktır. Mümkün olduğunca tek kelimeden oluşan veya kısa isimler vermek gerekir. Tablo ve Sütun ismi tekil olmalıdır. Yani tek kelimeden oluşmalıdır. Örneğin personel bilgilerinin saklandığığ tabloyapersonel ismini vermek mantıklı olur. Tablo ve Sütun isimleri içinde boşluk bulunmamalıdır. PERSONEL KAYITLARI şeklinde bir tablo ismi verilmemelidir. Ama PERSONEL_KAYITLARI şeklinde kelimeleri _ ile birleştirerek oluşan ifadeler tablo ismi olarak verilebilir. Tablo ismi içinde özel Türkçe karakterler kullanılmamalıdır. Ç,Ş, Ş Ü, İ,Ğ, ş,ç,ü,ğ,ı çüğ ı gibi harflerin kullanılması uygun görülmez. Hatta Oracle ve MS SQL Server veritabanı sistemlerinde hiçbir şekilde kullanılamaz. Tablo ve Sütun isimleri rakam veya sayısal değerlerle başlamamalıdır. 09PERSONEL gibi bir tablo ismi olmaz.

İLİŞKİLENDİRME TÜRLERİ Tablo1 Tablo2 Birincil anahtar :Primary Key İkincil anahtar :Foreign Key Bir Bir etkileşmesi: Tablo1 ve Tablo2 de birbirine eşit olan kayıtlar listelenir. Bir Çok etkileşmesi: Tablo1 deki tüm kayıtlar ve Tablo2 deki eşit olan kayıtlar listelenir. Bu ilişki SQL içinde LEFT JOIN olarak tanımlanır. Çok Bir etkileşmesi: Tablo2 deki tüm kayıtlar ve Tablo1 deki eşit olan kayıtlar listelenir. Bu ilişki SQL içinde RIGHT JOIN olarak tanımlanır.

ÇALIŞMA SORULARI Veritabanı nedir? Sizce nerelerde kullanılabilir? Veritabanı sistemlerinin getirdiği kolaylıklar sizce ne olabilir? Bir hastane için ilişkili olabilecek en az 3 tablo oluşturun. Veritabanı ile veritabanı yönetim sistemi arasında ne fark vardır? Satır (Record), Sütun (Field),Tablo (Table) tanımlarını yapınız. Sizce tüm veritabanı sistemlerinde ortak bulunabilecek veri türleri hangileri olabilir? Neden kısıtlayıcılara ihtiyaç duyulur? Bir veritabanı sisteminde tam sayılar için neden birbirinden farklı birden çok veri türüü bulunur? Birincil ve yabancı anahtarlar nedir? Aralarındaki fark nedir?