Friday, June 5, 2009

SQL%ROWCOUNT Kaç Satır Yaptiğim İşten Etkilendi

SQL%ROWCOUNT Kaç Satır Yaptiğim İşten Etkilendi

SQL%ROWCOUNT komutu bize number değer döndürür. Update işleminden etkilenen satirlarin toplam sayısını.

Bir update işlemi yaptık diyelim ki bunun sonucunda kaç tane satirin değiştiğini görmek isteyebiliriz. Yaptığımız işte veri tutarlılığını kontrol etmekte olsun yada update işlemi istediğim gibi çalışıyor mu konusunda bize yardimci olabilir.
insert işlemi ile birlikte çalıştırırsanız 1 değerini dödürdürecektir.
ayrıca
update
işlemini de aşağidaki gibi ayaprsanız yine 1 değerini döndürecektir size.
select * from for_rowcount
I
----
2
3
4
5
6
7
8
9
10
1
/***************************************/
BEGIN
UPDATE for_rowcount SET i= '11'
WHERE i = '4';
UPDATE for_rowcount SET i= '12'
WHERE i = '1';
UPDATE for_rowcount SET i= '21'
WHERE i = '3';
DBMS_OUTPUT.PUT_LINE(SQL%rowcount);
END;
/
1
/***************************************/
I
---------
2
21
11
5
6
7
8
9
10
12
/******************************************/

BEGIN
FOR a IN 1..10 LOOP
INSERT INTO for_rowcount VALUES(10);
DBMS_OUTPUT.PUT_LINE(SQL%rowcount);
END LOOP;
DBMS_OUTPUT.PUT_LINE(SQL%rowcount);
END;
/
/****************************************/
I
------
10
10
10
10
10
10
10
10
10
10
/*****************************************/
BEGIN
UPDATE for_rowcount SET i= '333'
WHERE i = '10';
DBMS_OUTPUT.PUT_LINE('etkilenen satir sayisi ='||SQL%rowcount);
END;
/

etkilenen satir sayisi = 10

No comments: