25 Haziran 2007 Pazartesi

Kürsör FOR döngüleri

Bilindiği gibi PL/SQL'de veritabanından bir recordu (kaydı) çağırmak için üç komut gereklidir; bunlar da OPEN (aç), FETCH (al), ve CLOSE (kapat) komutlarıdır, ancak kodunuzu kısaltmak istiyorsanız bu üç komut yerine bir kürsör FOR döngüsü kullanabilirsiniz.

Bir kürsör FOR döngüsü, kendiliğinden döngü indisini, veri tabanından alınmış bir satırı temsil eden bir record (kayıt) olarak deklare eder. Daha sonra bir kürsör açıp, sonuç kümesinin içinden değer satırlarını alıp, recordun (kaydın) alanlarına atar.

Bütün satırlar işlendikten sonra kürsörü kapatır. Aşağıdaki örnekte emp_rec, döngü içinde kendiliğinden bir record olarak deklare edilmiş olmaktadır.

DECLARE
CURSOR c1 IS
SELECT ename, sal, hiredate, deptno FROM emp;
...
BEGIN
FOR emp_rec IN c1 LOOP
...
salary_total := salary_total + emp_rec.sal;
END LOOP;

Bir kaydın ayrı alanlarını kullanmak için nokta kullanılır; emp_rec.sal gibi; emp_rec kaydının sal alanı için.

1 yorum:

Unknown dedi ki...

Harika bir başlangıç
Alper !!
Tebrik ederim

Saat 11 de yazacağın yazıyı merakla bekliyorum

Dil olarak türkçeyi seçmende ayrıca çok olumlu

Haftasanuna adım adım güzel bir hazılık oluyor ;)