PL/SQL’de Prosedür ve Fonksiyon yazarken sıkca kullandığımız rowtype üzerine bir kısa bir yazı yazmak istedim.
Oracle rowtype kullanımı üzerine bilgilerimizi tazeleyelim. Rowtype bize fonksiyon ve prosedürlerle çok esneklik sağlayan bir referans tip alma yöntemidir. Her hangi bir fonkisyon yada prosedür bir tablo üzerinde kolon veri tipini tekrar tanımlamak yerine o tablonun kolonunun veri tipini referans göstererek de yapabiliriz. Örneğin herhangi bir fonksiyon yada prosedürde muşteri nosu isimli bir değişken tanımlaması yapmak istiyorsak,
mus_no musteri.musteri_no%rowtype;
yukarıdaki şekilde tanımlayarak kullanacağımız tablodaki tipi referans alırız. Bu durumda referans tablo olan musteri tablosunda musteri_no kolonun tipi değişkene atanacaktır.
Bu şekilde kullanıma gitmemizin nedeni ise üzerinde çalışılacak tablonun kolonun güncellenmesi sonrasında, güncelenen kolonu kullanan fonksiyon ve prosedürler de güncelemeden kurtulmaktadır. Referans verilen fonksiyon ve prosedürlerin içinde declare ile tanımlanmış değişkenler tipi referansından alacağı için sorun olmayacaktır.
Ahmet Sedef
Latest posts by Ahmet Sedef (see all)
- Rowtype Kullanımı - Ara 12, 2013
- PL/SQL de Row Type Kullanımı - Ara 7, 2013
- Oracle 11G ile Gelen Virtual Columns - Ara 5, 2013