Привет, это мое первое сообщение, так жаль, если это было задано раньше. Я пытаюсь создать процедуру, которая добавит интерес к депозитному счету (для конкретного банка) и выведет на экран имена клиентов и новые балансы для депозитной учетной записи. Как бы то ни было, я не могу заставить его работать.Процедура SQL с явным курсором
CREATE OR REPLACE PROCEDURE addInterestNew(bank VARCHAR, interestRate INT out) AS
CURSOR CustomerBalance IS
SELECT customerName, balance
FROM Deposit
WHERE branchName = bank;
aCustomerName Deposit.customerName%TYPE;
newBalance Deposit.balance%TYPE
BEGIN
UPDATE DEPOSIT
SET balance = balance * (1 + (interestRate/100))
WHERE branchName = bank;
FETCH
OPEN CustomerBalance;
LOOP
FETCH CustomerBalance into aCustomerName,newbalance;
EXIT WHEN CustomerBalance%notfound;
dbms_output.put_line('CustomerName='||aCustomerName ||'balance='||newBalance);
END LOOP;
CLOSE CustomerBalance;
END;
/
любая помощь является оценили
благодаря
какая база данных вы используете? Каким образом это не работает, сообщение об ошибке или просто неожиданный результат? Также почему после этого параметр процентной ставки «выйдет»? Похоже, что это должен быть простой параметр. – nickebbitt
, пожалуйста, добавьте подробное описание ошибки в том, что у вас есть или почему результаты, которые вы получили, неверны – LINQ2Vodka
это Oracle (я действительно люблю его% TYPE) – LINQ2Vodka