ORACLE Nvl ve Coalesce Fonksiyonları

sira

Böyle bir arayüzümüz olsun. Sıra Numarası program çalıştığı an dinamik olarak veritabanında tutulan hasta_nakil tablosundaki sirano isimli alandan  ekrana gelsin. Bunun için şu kodu yazmamız yeterli olur diye düşünebiliriz:

Statement st = null;

Resultset res; st = connection.createStatement();

res = st.executeQuery(“select max(sırano)+1 sayı from hasta_nakil”);

while (res.next()) {

jTextField14.setText(res.getString(“SAYI”));

}

Her ne kadar bu sorgu mantık olarak doğru olsa da , hasta_nakil tablosunda  hiç bir veri yoksa (null ise) program hata verecektir. Bunu gidermek için Oracle da bulunan bu fonksiyonlar kullanılabilir. select nvl(max(sirano),0)+1 from hasta_bakil select COALESCE(max(sirano), 0)+1 sayı from hasta_nakil Bu iki fonksiyonda sorgu null döndürdüğü zaman null’un değerine 0’ı atayarak işleme devam ederler. Burada 0 yerine 1,2,3 vs de yazılabilir. Çıktı da ona göre değişir. Sadece integer değil String parametre de alabilirler. Yalnız burada max fonksiyonunda bir toplama işlemi olduğundan string veri ile hata verir.

Coalesce fonksiyonunun Nvl fonksiyonundan farkı ise  Coalesce fonksiyonu aldığı parametrelerden null olmayan ilk ifadeyi döndürür.

Reklamlar

Netbeans Oracle Sürücü Yükleme

Bilgisayarımızda Oracle veritabanının kurulu olduğunu varsayıyorum. Oracle veri tabanında tuttuğumuz tabloları Netbeans ile kullanabilmemiz için öncelikle Netbeans’e Oracle sürücüsünün yüklenmesi lazım. Buradan sürücüyü indirebilirsiniz: http://ww.oracle.com/technetwork/database/enterprise-edition/jdbc-112010-090769.html
Daha sonra Netbeans’de Services bölümünde Databases kısmını seçtikten sonra New Connection diyoruz.Görsel

Görüldüğü gibi Driver File(s) bölümünde hiçbir sürücü yok. Add butonu ile indirdiğimiz sürücüyü ekliyoruz ve yukarıda bulunan Driver seçeneciğinde Oracle Thin ve ya Oracle OCI sürücüsünü seçiyoruz.

 Görsel

Burada ise Oracle’ı hangi portta çalıştırıyorsak Port kısmına bu bilgiyi yazıyoruz. (Kendisi zaten otomatik olarak gelmekte ama kontrol etmekte fayda var.) User Name kısmına Oracle’da ki User ismini, Password kısmına ise bu User’a karşılık gelen parolamızı yazıyoruz. Test Connection diyerek bağlantıyı test ediyoruz. Herhangi bir hata almazsak  Finish diyerek  sürücü yükleme işlemimizi halletmiş oluyoruz.

İyi çalışmalar, kolay gelsin…