create procedure ueberweisen -- lege Prozedur an @x int, -- Konto-Nr. zum Belasten @y int, -- Konto-Nr. fuer Gutschrift @betrag money -- Ueberweisungsbetrag as declare @s money -- lokale Variable SELECT @s = stand FROM konto -- hole Kontostand nach s WHERE nr = @x -- von Konto-Nr. x IF @s < @betrag BEGIN -- falls Konto ueberzogen INSERT INTO abgelehnt -- notiere den Fehlschlag VALUES (getdate(), @x, @y, @betrag) -- in der Tabelle abgelehnt END ELSE BEGIN UPDATE konto -- setze in der Tabelle konto SET stand = stand-@betrag -- neuen Betrag ein WHERE nr = @x -- fuer Kontonr @x UPDATE konto -- setze in der Tabelle konto SET stand = stand+@betrag -- neuen Betrag ein WHERE nr = @y -- fuer Kontonr @y INSERT INTO gebucht -- notiere die Ueberweisung VALUES (getdate(), @x, @y, @betrag) -- in der Tabelle gebucht END