Code: Alles auswählen
CREATE PROCEDURE `PROZEDUR_NAME`(IN `InvoiceID` INT, IN `ItemID` INT, IN `ItemQuantity` INT)
LANGUAGE SQL
NOT DETERMINISTIC
CONTAINS SQL
SQL SECURITY DEFINER
BEGIN
DECLARE quantity INT;
DECLARE homebased INT;
SET homebased = (SELECT `item-home-stored` FROM `mystore2011_items` WHERE `id`=ItemID);
INSERT INTO `mystore2011_invoice-items`(`invoice-fid`,`item-fid`,`item-quantity`) VALUES(InvoiceID,ItemID,ItemQuantity);
IF homebased = 1 THEN
SET quantity = (SELECT `item-quantity` FROM `mystore2011_store-home` WHERE `item-fid`=ItemID);
UPDATE `mystore2011_store-home` SET `item-quantity`=(quantity - ItemQuantity) WHERE `item-fid`=ItemID;
END IF;
END
Code: Alles auswählen
CALL PROZEDUR_NAME(InvoiceID,ItemID,ItemQuantity)