Pages

Apache Derby'de Tablo ve Veritabanı Oluşturma


Merhaba arkadaşlar, bugünkü dersimiz de Derby Gömülü Veritabanın’da Veri tabanı ve tablo oluşturmaktan bahsedeceğim. 
Derby Gömülü Veri tabanı sunucu özelliği taşımaz ve tek kullanıcılıdır. Yani Derby ile oluşturulmuş bir veri tabanını sadece bir program kullanır. Derby de ufak değişiklikler olsa da genel itibariyla tablo oluşturma diğer VTYS’lerle aynıdır ve aynı mantıkta çalışır. Şimdi kısaca basit bir veri tabanı ve tablo oluşturmaktan bahsedeceğim.
Veri Tabanımızın adı : EclipseTurkiye olusun. Tablomuzun ismi ise sanalKursKategori olsun ve sanalKursKategori tablosun da id, katAdi sütunları olsun.
Derby’de veri tabanı oluşturma kodu aşağıda ki gibidir.
“jdbc:derby:c:/EclipseTurkiye;create=true”; bunun anlamı şudur.
jdbc derby ile c: sürücüsünde EclipseTurkiye adında bir veri tabanı yoksa oluştur. Create=true yoksa oluştur anlamında kullanılmıştır. Burada veri tabanı oluştururken c:/EclipseTurkiye adında c: / sürücüsüne yeni bir veri tabanı klasorü oluşturmaktadır, bu işi otomatik olarak da yaptırabiliriz bunun için java’da File class'ın da separatorChar adında bir metot kullanılır. Kullanımı aşağıdaki gibidir Windows’ta ve linux’ta direkt kullanıcı dosyalarına(xp’de belgelerim) veri tabanı klasörünü oluşturur;
static {
String ev, sistem;
ev = System.getProperty("user.home", ".");
sistem = ev + File.separatorChar + ".EclipseTurkiye";
System.setProperty("derby.system.home", sistem);

try {
Class.forName("org.apache.derby.jdbc.EmbeddedDriver");
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

}
User.home kullanıcı dizini demektir, yani hangi işletim sistemi kullanıyorsanız oranın kullanıcı dosyalarının içine otomatik olarak .EclipseTurkiye adında bir klasör oluşturuyor. Bunu oluşturmadan önce aşağıdaki adımları izler ve bazı tespitler yapar.
ev = System.getProperty("user.home", ".");
System.setProperty("derby.system.home", sistem);  //burada kullanıcının işletim sistemi tespit ediliyor.
Yani; Sistem  ve ev değişkeninden klasör oluşturacağı kullanıcı (User) dizinini buluyor ve EclipseTurkiye adında bir klasör oluşturuyor tıpkı aşağıda ki gibi.
sistem = ev + File.separatorChar + ".EclipseTurkiye";
sistem = ev birbiri ile ilişkilendirilip File.separatorChar ile ”EclipseTurkiye” klasörü oluşturuluyor. 
Kısaca otomatik veri tabanı yolu oluşturma böyle gerçekleşiyor.
              Gelelim Tablo oluşturmaya:
Derby de diğer SQL kullanan VTYS’lere göre ufak değişiklikler var şimdi aşağıda göreceksiniz bu değişiklikleri.
CREATE TABLE sanalKursKategori (id INTEGER NOT NULL GENERATED ALWAYS AS IDENTITY (START WITH 1, INCREMENT BY 1), katAdi VARCHAR(50))
CREATE TABLE sanalKursKategori  = Burada demek istenen şudur; SanalKursKategori adında bir tablo oluştur. 
id INTEGER NOT NULL GENERATED ALWAYS AS IDENTITY (START WITH 1, INCREMENT BY 1)= Burada ise id adında tam sayı olarak üretilen kimlik birincil anahtardır ve her zaman bir den başlar ve birer birer artar anlamına gelmektedir. katAdi VARCHAR(50) ise katAdi adında ki sutun kısıtlı metindir ve 50 karakterden fazla kullanıcı giriş yapamaz. Karakterden fazla derken  sadece karakter türünde ki sayı harf ve özel karakter anlamına gelmektedir. Integer türünde ki bir java karakterini buraya kayıt yaptıramazsınız. 
Anlaşılan o ki Derby’de diğer SQL kullanan VTYS’ler gibi aynı özellikleri taşımaktadır fakat yazım farklılıkları göstermektedir.
Bugün ki dersimiz bu kadar arkadaşlar umarım sizlerin işine yarayacak konulara değinmişimdir iyi dersler diliyorum.


Share on Google Plus

About eclipseturkiye

This is a short description in the author block about the author. You edit it by entering text in the "Biographical Info" field in the user admin panel.
    Blogger Comment
    Facebook Comment

1 yorum:

  1. Selam youtube videolarınızı izledim. Ancak daha derbyi kuramadım. Söylediğiniz plug-in ler sitede bulunmuyor. Yeni durum için ne yapabiliriz. Teşekkürler. Not: Eclipse Luna Release 2(4.4.2) kullanmaktayım.

    YanıtlaSil