Im 2. Fall ist ja localWord leer, da Word nehmen:
SQL-Code:
CREATE PROCEDURE SP_SPAM_IU (
word varchar(30))
returns (
anzahl integer)
as
declare variable LocalWord varchar(30);
BEGIN
SELECT WORD, ANZAHL FROM SPAM WHERE (WORD = :WORD) INTO :LocalWord, :ANZAHL;
IF (LocalWord is not NULL) THEN
BEGIN
UPDATE SPAM SET ANZAHL = :ANZAHL +1
WHERE (WORD = :WORD);
Anzahl = Anzahl +1;
END ELSE
BEGIN
INSERT INTO SPAM (
WORD,
ANZAHL)
VALUES (
:Word,
1);
ANZAHL = 1;
END
SUSPEND;
END