PostgreSql - View oder Funktion

RudolfG

Erfahrenes Mitglied
Hi Leute,

ich schildere erst kurz mein Szenario:

Um Datenbank-Felder zu aktualisieren, benutze ich Funktionen (auch um eine bessere Schnittstelle für "externe" Entwickler zu bieten).

Meine Funktionen sehen in der Regel so aus (stark vereinfachtes Beispiel):

SQL:
CREATE FUNCTION setValueAddedTax(newValue numeric) RETURNS void AS '
   Update t_settings SET t_value_added_tax = $1
' LANGUAGE SQL;

Um mir die MwSt anzeigen zu lassen, benutze ich aber ein View:


SQL:
CREATE VIEW v_value_added_tax AS 
   SELECT settings_value_added_tax
   FROM t_settings;
Ich könnte es aber auch mit/als Funktion implementieren:

SQL:
CREATE FUNCTION valueAddedTax() RETURNS numeric AS '
   SELECT settings_value_added_tax</p>
   FROM t_settings
' LANGUAGE SQL;

Kann mir bitte jemand sagen, welchen Unterschied es zwischen der View und Funktion in Benug auf auslesen ohne Paramter gibt? (Ist eins schneller als das andere, besserer Stil etc.)

Ich würde es ja ausprobieren, habe aber im Moment nur eine leere Datenbank hier und komme im Moment auch nicht an eine volle dran und bei einer leeren (mit einigen 100 Datensätzen) ist es nicht wirklich aussagekräftig.

Gruß
Rudolf Grauberger
 
Zurück