Einzelnen Beitrag anzeigen

Gecko
(Gast)

n/a Beiträge
 
#37

Re: Was mache ich falsch? Firebird rattert wie irre auf der

  Alt 11. Jun 2007, 15:28
Ich hab die StoredProc von Alex jetzt (leicht abgeändert) in IBExpert probiert:

Tabellenaufbau:
Word | Anzahl
Primary Key
Indiziert

SQL-Code:

CREATE PROCEDURE SP_SPAM_IU (
    word varchar(30))
returns (
    anzahl integer)
as

BEGIN
  SELECT WORD, ANZAHL FROM SPAM WHERE (WORD = :WORD) INTO :WORD, :ANZAHL;
  IF (WORD is not NULL) THEN
  BEGIN
    UPDATE SPAM SET ANZAHL = :ANZAHL +1
    WHERE (WORD = :WORD);
  END ELSE
  BEGIN
    INSERT INTO SPAM (
        WORD,
        ANZAHL)
    VALUES (
        :WORD,
        1);
    ANZAHL = 1;
  END

  SUSPEND;
END
Es kommt dann beim Ausführen auch ein Abfragefeld für den Parameter (Word), allerdings ist der Rückgabeparameter (anzahl) der mir dann angezeigt wird immer NULL
und in die Tabelle wird auch nichts eingefügt
  Mit Zitat antworten Zitat