2012/12/21

SQL Tablo oluşturmak ve DDL cümlelerin kullanımı


Tablolar veritabanın da yer alan en basit veri saklama yapılarıdır. İlişkisel veri tabanında tablolar arasında da çeşitli ilişkiler oluşturulmuştur.Her tablonun kendisine ait özel bir ismi vardır.Bir tablo için kullanılan isim aynı şema içerisinde başka bir tabloya daha verilmez. DDL ise veritabanı objeleri yaratılmasıyla ilgili komutlardır. DDL açılımı ise şöyledir ( Data Definition Language).
 Tablo oluşturmak;
   Şemaların barındırılabileceği nesnelerin belkide en önemlisi  olan ve verileri barındıran  tabloları oluşturma işlemine diyebiliriz.Tablo oluşturmak için create table cümlesi kullanılır..
  •      Kullanım şekli;

                    Create table kitaplar(
                    Kitap_no number(4),
                    Kitap_adi varchar2(20),
                    Yazi_adi varchar2(20),
                    Fiyat number(10,2)
           );
  Kopya tablolar oluşturmak;
  Daha önceden yapılmış bir tabloyu kopyalamaktır.
  •   Kullanım şekli;   

            create table kopya_deneme as select * from deneme;
             (deneme tablosunu tamamını kopyalar.)                                              
            create table personel_bilgi as select first_name,last_name,salary from employees;
              (verilen filtleri diğer tabloya kopyalar.)
  
Tablo yada sütuna yorum eklemek;
   Tablo yada sütunlara bunlarla ilgili bilgi eklemek amacıyla yorum eklemek mümkündür.
  •  Kullanım şekli;  

                  comment on table <table_adi> is <yorum>;
                  commet on table seferler is ‘oracle 10g kitap_örnek tablo’;


Tablolarin degistirilmesi;
  Bir tablo oluşturdukdan sonra çeşitli nedenlerden tablo yapısında değişiklik yapmak gerekir.
  • Sütun tanımına ve sütunun varsayılan değerinin değiştirilmesi,
  • Yeni bir sütun eklemek,
  • Var olan sütunun değiştirilmesi(silinmesi),
  • Tablo tanımının değiştirlmesi,
  • Yeni kısıtların eklenilmesi,
  • İsminin değiştirilmesi,

Tabloya sütun eklemek;
  Veri alan bir tabloya sütun eklemek için kullanılan söz dizimi şöyle gösterilebilir.
  •    Alter table [<sema>.] <tablo>  add <sutun_tanimi>; yani

             Alter table siparişler add sipariş_tarihi date;  (adi sipariş_tarihi olan date tipinde sütun eklendi.)
             Alter table deneme  add email  varchar2(20);  (deneme tablosuna email sütunu eklenecekdir.)
 Sütunların değiştirilmesi;
   Tabloda var olan sütunu değiştirmek için kullanılan söz dizimidir.
  • Alter table[<sema>.<tablo adi>]  modify <sütun adi> <sütunun yeni özelliği>;

          Alter table deneme modify tel_no number;  (tel_no sütununu number tipinde yapacakdır)
Sütunların düşürülmesi;
  Tabloda gereksiz yere oluşturulmuş yada veritabanı tasarımındaki değişiklik nedeniyle artık ihtiyaç kalmamış sütunlar tablodan düşürülür.
  •   Alter table [<sema>]<tablo adi> drop {column <sütun adi>};

            Alter table test drop column a; (tablodaki kolon 'a' yı silecekdir.)
            Alter table deneme  drop column telno;
            Drop table jobs;(tüm tabloyu siler)

COLUMNS CONTIUNE;
 Daha önce yapılan bir sütun düşürme işlemi kesilmiş yarıda kalmış ise düşürme işlemini tamamlamak için kullanılır.
UNUSED COLUMNS;
  Kullanım dişi bırakılan sütunları düşürmek için kullanılır. Düşürme işlemi yapılırken eğer birden fazla  sütun kullanım dişi bırakılmiş ise hepsi birden düşürülür. Sütunlar içerisinde seçim yapılmaz.
  •   Kullanım şekli;  alter table test_usuned set unused(a,b);

Tabloların adının değiştirilmesi;
    Tablo işleminin içeriği veri ile ilişkili olması  kullanım kolaylıği açısından önemlidir.Yoksa ayırt etmek zorlaşır. Tabloların adı değiştirildiği zaman;
  • Oracle otomatik olarak bütünlük kısıtlarını,indexlerini ve yetkilerini tabloya aktarır.
  • Adı değiştirilen tablonun tüm nesneler geçersiz kısmına getirilir.

   Kullanım şekli;   
    alter  table  kitaplar  rename to kütüphane; (tablonun adi kütüphane olacakdır.)
    alter  table deneme rename  column telno to telefon _no;(bur da ise kolon adı değiştirilmisdir.)


İyi Okurlar.

Hiç yorum yok:

Yorum Gönder