Sobes.tech
Middle

Prosedür ile fonksiyon arasındaki farklar

sobes.tech yapay zeka

AI'dan gelen yanıt

Procedure ve fonksiyon, veritabanları ve programlamada alt programlardır, ancak aralarında temel farklar vardır:

  • Fonksiyon her zaman bir değer döner ve ifadelerde kullanılabilir, örneğin SELECT'te.
  • Procedure ise işlemler yapabilir (örneğin, verileri değiştirebilir), ancak doğrudan bir değer dökmek zorunda değildir.

SQL (PL/pgSQL) örneği:

-- Fonksiyon iki sayının toplamını döner
CREATE FUNCTION add_numbers(a INT, b INT) RETURNS INT AS $$
BEGIN
  RETURN a + b;
END;
$$ LANGUAGE plpgsql;

-- Procedure, tabloya kayıt ekler
CREATE PROCEDURE insert_user(name TEXT) AS $$
BEGIN
  INSERT INTO users(username) VALUES (name);
END;
$$ LANGUAGE plpgsql;

Fonksiyonlar genellikle hesaplamalar için kullanılır ve sonuç döner, prosedürler ise işlemler için, genellikle yan etkilerle.