hi,
ich mochte mit einer stored function einen eintrag in eine tabelle mache.
die function soll auch prüfen ob dabei ein fehler entstanden ist und falls ja, soll sie false zurückgeben.
bestimmt gibt es dafür eine mysql systemvariable die man überprüfen kann.
ich habe aber nach längerem suchen nichts gefunden.
hier mal die function ... stelle die überprüft werden soll ist mit kommentar versehen
hoffe ihr könnt helfen
gruß
Pozzle
p.s.: noch kurz dazwischen: die initialisierung ist doch richtig (bei mssql muss da glaub noch ein @ davor, damit der weis, dass es eine variable ist)
ich mochte mit einer stored function einen eintrag in eine tabelle mache.
die function soll auch prüfen ob dabei ein fehler entstanden ist und falls ja, soll sie false zurückgeben.
bestimmt gibt es dafür eine mysql systemvariable die man überprüfen kann.
ich habe aber nach längerem suchen nichts gefunden.
hier mal die function ... stelle die überprüft werden soll ist mit kommentar versehen
Code:
DELIMITER |
-- -----------------------------------------------------------------------------
DROP FUNCTION IF EXISTS dominik.sp_AddNewGaestebuch|
CREATE FUNCTION sp_AddNewGaestebuch (VarName VARCHAR(50), VarEintrag TEXT, VarEMail VARCHAR(75), VarHomepage VARCHAR(255), VarICQ INT(10), VarDatum INT(10), VarMSN VARCHAR(75), VarYahoo VARCHAR(50))
RETURNS BOOL
BEGIN
-- Initialisieren
DECLARE VarCheck BOOL DEFAULT FALSE;
-- Insert ausführen
INSERT INTO gaestebuch (name, eintrag, email, homepage, icq, datum, msn, yahoo) VALUES (VarName, VarEintrag, VarEMail, VarHomepage, VarICQ, VarDatum, VarMSN, VarYahoo);
-- Pruefen ob Abfrage erfolgreich
IF ........... THEN -- HIER SOLL ER PRÜFEN OB INSERT OHNE ERROR
SET VarCheck = TRUE;
END IF
-- Rueckgabe
RETURN VarCheck;
END|
-- -----------------------------------------------------------------------------
DELIMITER ;
hoffe ihr könnt helfen
gruß
Pozzle
p.s.: noch kurz dazwischen: die initialisierung ist doch richtig (bei mssql muss da glaub noch ein @ davor, damit der weis, dass es eine variable ist)
Zuletzt bearbeitet: