Kategoriler


SON YORUMLAR
merve ebru
yanılıyorsunuz onların hepsini yapıyorum
Kimsesizkimse
Tanıdık gitmeyin devlet özel yerlere gidip para alın belki vermez tanıdık ama devlet verir
coder
10. madde hariç hepsi yalan
programcı
10. maddeyi uygulayacağım teşekkürler
ceylan
Esit agirliktan bilgisayar muhendisi olunur mu

Gelin bu isten vazgecek telef olmasin bunca bubayigit suleyman
Büşra
çok güzel bir yazı olmuş mühendislikten tam vazgeçerken sizin makalenizi okudum ve bilgisayar mühendisliğini bırakmamam gerektğini anladım çok etkili oldu teşekkürler.
merve
3. maddenize katılmıyorum kusura bakmayın ama biraz küstahça olmuş meslek lisesine gidip iyi yerlere gelen insanlar çok var siz böyle söyleyerek gençlerin heveslerini kırıyorsunuz . sizinde dediğiniz gibi Unutmayın işini iyi yapan iyi bilgisayar mühendisleri her zaman el üstünde tutulur.
nazlı
çok teşekkürler gerçekten çok yardımcı oldunuzz :)
Ömer
Lisedeyim sosyal mühendislik ve programla üzerine çalışıyorum genelde visual basic ve ddlphi kullanıyorum javayi hiçbir zaman anlayabilmis değilim genelde online oyunlar için hacking projeleri delphi7 ile yapıyorum trainer vs.vb ile Dd program fealn ama kodları ezbere yazamıyorum if elde komutlarını aklıma gelmiyor zamanla oturur mu
OkanB
Izmir Yüksek Teknoloji Enstitüsü .nü istiyorum . Bu üniversiteden mezun oldugum zaman özel sektörde iş bulma-bulamama ihtimalim nedir veyahut başka önerebileceginiz üniversiteler var mıdır varsa nelerdir?
OkanB
Izmir Yüksek Teknoloji Enstitüsü .nü istiyorum . Bu üniversiteden mezun oldugum zaman özel sektörde iş bulma-bulamama ihtimalim nedir veyahut başka önerebileceginiz üniversiteler var mıdır varsa nelerdir?
Azer
evet
Tatar Ramazan
C# (2500) Java (1500) ASP.NET, Silverlight, WPF, WCF, ADO.NET (2000) XML, XSL, HTML, Javascript, CSS, JQuery, Ajax (1500) Reporting Services, T-SQL, PL/SQL (2000) İngilizce YDS 72 puan (500) Bildiklerimi de % 80-90 seviyesi biliyorum. Yukarda sahip olduğum niteliklere göre 10.000 TL almam gerekiyor. Veren var mı? Yok. Denilebilir ki bilgin önemli değil yaptığın işin miktarı önemli. Tamam da bize yazık değil mi? Her firma farklı bir teknoloji istiyor. Onu öğren bunu öğren şunu öğren canımız çıkıyor. Bu sefer de hiç bir alanda uzman değilsiniz diyorlar. 10 tane şeyi bilmemizi isterseniz yeni mezun olarak nasıl hepsinde uzmanlaşacağız? Para da vermiyorlar. Herkes tıbbı tercih ediyor. Biz adamın ciğerini sökeriz.

Bilgisayar Mühendisleri
Here is the website inspired me to use 
it as a guide when I tried to define 
myself as an engineer candidate a few 
years ago. It really helped me to work
 and study feeling in confidence with 
being on the right way. I suggest this 
website to whom it may direct her/his 
to find the right career path. It 
includes many articles varies from 
real life experiences to detailed 
software engineering issues. But the 
most dignified parts for me are the 
articles in general and career titles.
Son okunan makaleler:
Oracle - Data Integrity (Veri Bütünlüğü)
Mezunları en kolay iş bulan üniversiteler
Bilgisayar mühendisliğinde okuyan öğrencilere tavsiyeler
Bilgisayar mühendisliğinde okuyan öğrencilere tavsiyeler
Bilgisayar mühendisliğinde okuyan öğrencilere tavsiyeler
DOKTOR GİBİ BİLGİSAYAR MÜHENDİSİ OLMAK
Bilgisayar mühendisliğinde okuyan öğrencilere tavsiyeler
Bilgisayar mühendisliğinde okuyan öğrencilere tavsiyeler
Bilgisayar mühendisliğinde okuyan öğrencilere tavsiyeler
Bilgisayar mühendisliğinde okuyan öğrencilere tavsiyeler
Bilgisayar mühendisliğinde okuyan öğrencilere tavsiyeler
Bilgisayar mühendisliğinde okuyan öğrencilere tavsiyeler
Bilgisayar mühendisliğinde okuyan öğrencilere tavsiyeler
Bilgisayar mühendisliğinde okuyan öğrencilere tavsiyeler
Bilgisayar mühendisliğinde okuyan öğrencilere tavsiyeler
Staj Yeri Nasıl Bulunur? Staja hazırlık olarak neler yapmalıyım?
Staj Yeri Nasıl Bulunur? Staja hazırlık olarak neler yapmalıyım?
Staj Yeri Nasıl Bulunur? Staja hazırlık olarak neler yapmalıyım?
Staj Yeri Nasıl Bulunur? Staja hazırlık olarak neler yapmalıyım?
Staj Yeri Nasıl Bulunur? Staja hazırlık olarak neler yapmalıyım?

Bilgisayar Mühendisleri Portalı

Oracle - Data Integrity (Veri Bütünlüğü)

 

Uygulamalarımızda veri bütünlüğümüzü sağlamak, bozuk tutarsız verilerin girişini ya da mevcut bilgilerin üzerinde değişiklik yaparken bozulmasını engellemek isteriz.Bunu sağlamak için önceden bir takım kurallar tanımlamak durumundayız.Bunu aşağıdaki gibi bir örnekle kısaca açıklayalım :

integrity

“emp” tablosunda çalışan bilgileri , “dept” tablosunda da çalışılan bölüm bilgileri tutulmaktadır.EMP tablosunda empno alanının tek olması, ename alanının boş olmaması, sal alanını 10.000 den küçük olması, deptno alanının dept tablosunda muhakkak bir karşılığının olması, dept tablosunda da dname alanının dolu olması şartlarını sağlamak isteyebiliriz.Tüm bunlar verimizin bütünlüğünü ve tutarlılığını garanti altına almak için konulan kurallardır.
Veri tutarlılığını, bütünlüğünü sağlamak için kullanılan kuralları aşağıdaki gibi özetlemek mümkün :

NULL Kuralı(NULL Rule) : Bir kolon üzerinde update ya da insert işlemi olduğunda bu kolonun NULL olabilir ya da NULL olamaz kontrolüdür.

Tek değerli Kolon Kuralı (Unique Column Rule) : Bu kural ile bir kolonun (ya da kolon grubunun) tek bir deger alması sağlanabilir. Anahtar Değer Kuralı(Primary Key Rule) : Bir tabloda anahtar değer olarak tek değer içermesi istenen kolon ya da kolonlar grubudur.

Referential Integrity Rules : Kısaca , bir kolonun karşılığının diğer bir tabloda bulunması zorunluluğudur.Kendi içinde çeşitleri vardır.Referans olan verinin silinmesi ya da değişirilmesini engelleyebilir, update edildiğinde ya da silindiğinde NULL a set edilmesini sağlayabilir , bu verinin silinmesi ya da değiştirlmesi durumunda cascade olarak bağlı tüm verinin silinmesini ya da değiştirilmesini sağlayabilirsiniz.Özellikle “Referential Integrity” en cok kullanılan kurallardandır.

Oracle ın desteklediği kurallar aşağıdaki şekilde özetlenebilir :
         NOT NULL kısıtı (constraint)
         UNIQUE kısıtı (constraint)
         PRIMARY KEY kısıtı (constraint)
         CHECK kısıtı (constraint) à Karmaşık kurallar içeren kısıtlarda kullanılır.
         FOREIGN KEY kısıtı (constraint).Bu kısıt aynı zamanda Referential Integrity kapsamındadır.Bunun içersinde update,delete no action – delete cascade ve delete set null özellikleri bulunur.

Şimdi bunları daha detaylı olarak inceleyelim :
 

NOT NULL integrity constraint : Bu kısıt ile bir kolonun muhakkak bir deger almasını sağlayabiliriniz.Bunu tablo olustururken ya da tablo oluşturduktan sonra ALTER TABLE ile sağlayabilirsiniz :
Create table t (id number,
  str varchar2 not null);
Alter table t modify str null;
 

UNIQUE key integrity constraint : Bu kısıt ile bir ya da daha fazla kolonu içine alacak şekilde aynı tabloda bu kolon ya da kolonların birlikte aynı değeri alan 2. bir kayıt olması engellenmiş olur.
Ektradan NOT NULL kısıtı olmadıgı sürece uniqueu key kısıtında null değer girilebilir. Bunu tablo olustururken ya da tablo oluşturduktan sonra ALTER TABLE ile sağlayabilirsiniz ya da kaldırabilirsiniz.(Birden fazla kolon üzerinde oluşturulursa “composite unique key” denir.)

Create table t (id number,
  str varchar2
  unique str);

Alter table t drop constraint sys_c001463;

Alter table t add  constraint t_str_uni;

Bu kısıt oluşturuldugunda oracle unique index oluşturur.
 

Primary key integrity constraint :  Unique key kısıtına benzese de farklıdır.Primary key null deger alamaz ve tablo da en fazla bir tane primary key kısıtı olabilir.Ortak ozelliği tanımlı kolon ya da kolonlar için aynı degerde satırlar olamaz.

Create table t(id number primary key,Str varchar2)

Primary key oluşturma durumunda T tablosunda id kolonu için hem unique index oluşturulur hem de id kolonu için not null kısıtı oluşturulur.
 

Referential Integrity Constraints : Öncelikle aşağıda geçen terimleri iyi anlamak gerekiyor.
Foreign key : Kolon ya da kolonlar grubu olabilir.Referans verilen anahtarı(refrenced key) gösterir.
Referenced key : Foreign key tarafında referans verilen aynı ya da farklı tablodaki primary key ya da unique keylerdir.
(Depended = child ) table : foreign key barındıran tablodur.
(Referenced = parent) table : foreign key in gösterdiği alanın bulundugu tablodur.

Foregin key parent tabloda bir parent key ile eşleşmelidir.Ama not null kısıtı yok ise NULL değer içerebilir.Parent tablo ile child tablonun aynı da olabilir.(Self Integrity Constraints) Referenced parent key değeri üzerinde bir değişiklik ya da silinme durumu olduğunda otomatik olarak bazı işlemlerin yapılması sağlanabilir.Referenced parent key silinme teşebbüsünde varsayılan olarak buna izin verilmez.Ama delete cascade opsiyonu ile parent tabloda bulunan değer silinince child tabloda bulunan bu değerdeki tüm kayıların silinmesi sağlanabilir ya da NULL değer verilebilir.

Parent key hiç bir zaman update ya da delete görmüyorsa index konulmaz, diğer durumlarda foreign key üzerinde index oluşturmalıdır.Index olmadıgı durumda parent tablo uzerinde yapılan bir update işleminde tüm child tabloya lock konulması soz konusu olacaktır.Bu da child tablo üzerinde yapılacak DML işlemlerinin bekletilmesi anlamına gelecektir.
 

Check integrity constraints : Kolon ya da kolonlar üzerinde belli bir durumu sağlayıp sağlamaması durumuna göre konulan kısıtlardır.Bazı koşulları sağlaması gerekir.Şöyleki check kısıt view lar üzerinde tanımlanamaz, boolean bir değer üretmelidir, subquery ve sequence içeremez, sysdate gibi SQL fonksiyonları kullanılamaz, level – rownum gibi pseudocolumn lar içeremez.Örnekler :

CREATE TABLE suppliers (
supplier_id numeric(4),
supplier_name varchar2(50),
CONSTRAINT check_supplier_id CHECK (supplier_id BETWEEN 100 and 9999)
);

CREATE TABLE dept(
   deptno NUMBER(2) CONSTRAINT pk_dept PRIMARY KEY,
   CONSTRAINT ck_deptno CHECK (deptno BETWEEN 10 and 99),
   dname VARCHAR2(9),
   CONSTRAINT ck_dname CHECK (dname=UPPER(dname)),
   loc VARCHAR2(10) CONSTRAINT ck_loc CHECK (loc IN(’DALLAS’,’BOSTON’,’CHICAGO’))
)

CREATE TABLE emp (
   empno NUMBER(4) CONSTRAINT pk_emp PRIMARY KEY,
   ename VARCHAR2(10),
   job VARCHAR2(9),
   hiredate DATE,
   sal NUMBER(7,2),
   comm NUMBER(7,2),
   deptno NUMBER(2),
   CONSTRAINT fk_deptno FOREIGN KEY (deptno) REFERENCES dept(deptno),
   CONSTRAINT ck_total CHECK (sal + comm <=5000)
)

NOT :
1) Tüm bu kısıtlar Oralce SQL i çalıştırdıktan sonra kontrol edilir.

2) Kolonların varsayılan değerleri bir insert gibi işlem görür ve tüm kısıtlara tabidirler.

 Hakkı Oktay
http://hakkioktay.wordpress.com

Bu makaleyi beğendin mi? Yorumunu Yaz!







Sizden Gelen Yorumlar:

Yorum Yazın




Copyright© 2001-2017. Bilgisayar Mühendisleri Portalı | Bütün hakları saklıdır.