Hallo Freunde von postgreSQL,
ich habe mir mit pg 7.3.3 eine Funktion geschrieben. Diese Funktion ändert einen Datensatz oder legt einen neuen an. Ich übergebe alle benötigten Felder. Erstes Feld ist der Primärschlüssel. Die Function prüft (IF...THEN...ELSE) ob der erste übergebene Wert ($1= ein NULL-Wert ist. Wenn ja, wird mit den restlichen Daten ein Insert ausgeführt, wenn nein wird ein Update ausgefüht.
Klappt alles auch soweit ganz toll. Allerdings tritt jedesmal ein Fehler auf, wenn ich versuche einen NULL-Wert zu übergeben ...
Meine Frage: wie übergebe ich einen NULL-Wert an meine Funktion??
Hier die Funktion:
und so rufe ich dat Ding auf:
und das geht leider nicht ...
Bitte helft mir - ich habe keine Ahnung mehr
Danke!
ich habe mir mit pg 7.3.3 eine Funktion geschrieben. Diese Funktion ändert einen Datensatz oder legt einen neuen an. Ich übergebe alle benötigten Felder. Erstes Feld ist der Primärschlüssel. Die Function prüft (IF...THEN...ELSE) ob der erste übergebene Wert ($1= ein NULL-Wert ist. Wenn ja, wird mit den restlichen Daten ein Insert ausgeführt, wenn nein wird ein Update ausgefüht.
Klappt alles auch soweit ganz toll. Allerdings tritt jedesmal ein Fehler auf, wenn ich versuche einen NULL-Wert zu übergeben ...
Meine Frage: wie übergebe ich einen NULL-Wert an meine Funktion??
Hier die Funktion:
PHP-Code:
Begin
if $1 is null then
insert into tbl_buchungen (
buc_von
, buc_bis
, buc_pause
, buc_dat
, ma_id )
values($2, $3, $4, $5, $6);
return $1;
else
update tbl_buchungen set
buc_von = $2
, buc_bis = $3
, buc_pause = $4
, buc_dat = $5
, ma_id = $6
where buc_id = $1;
return $1;
end if;
End;
PHP-Code:
select * from buchen(2,'7:15','16:20','0:45','2003-13-10',1)
PHP-Code:
select * from buchen(,'7:15','16:20','0:45','2003-13-10',1)
Danke!
Kommentar