Boole türünde özel bir FOUND değişkenini inceleyebilirsiniz. Belgelerden:
FOUND, her PL / pgSQL fonksiyon çağrısında yanlış başlar. Aşağıdaki ifade türlerinin her biri tarafından ayarlanır:
SELECT INTO ifadesi bir satır atanmışsa FOUND değerini, satır döndürülmediğinde false değerini ayarlar.
PERFORM deyimi, bir veya daha fazla satır üretirse (ve atarsa) FOUND değerini, satır üretilmezse false değerini ayarlar.
UPDATE, INSERT ve DELETE deyimleri, FOUND en az bir satır etkilenirse true, hiçbir satır etkilenmezse false olarak ayarlanır.
Bir FETCH deyimi bir satır döndürürse FOUND değerini, satır döndürülmediğinde false değerini ayarlar.
Bir MOVE deyimi, imleci başarıyla yeniden konumlandırırsa FOUND değerini yanlış, aksi halde false olarak ayarlar.
FOR veya FOREACH deyimi, bir veya daha fazla kez yinelenirse FOUND değerini yanlış, başka bir değer olarak ayarlar. FOUND, döngüden çıkıldığında bu şekilde ayarlanır; Döngünün yürütülmesi içinde, FOUND, döngü gövdesi içindeki diğer ifadelerin yürütülmesi ile değiştirilebilmesine rağmen, döngü ifadesi tarafından değiştirilmez.
Sorgu en az bir satır döndürürse, RETURN QUERY ve RETURN QUERY EXECUTE ifadeleri FOUND true, hiçbir satır döndürülmezse false olarak ayarlanır.
Diğer PL / pgSQL deyimleri FOUND'un durumunu değiştirmez. Özellikle EXECUTE öğesinin GET TANILAMA çıktısını değiştirdiğini, ancak BULUNAMADI değişmediğini unutmayın.
FOUND, her PL / pgSQL işlevi içindeki yerel bir değişkendir; herhangi bir değişiklik sadece geçerli işlevi etkiler.
select into
veri döndürmeyen bir veri yine de bir istisna oluşturur