me marca error en la declaración del procedure
Publicado por valeria (1 intervención) el 25/07/2020 17:05:59
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
DELIMITER //
CREATE PROCEDURE PR_CUENTASMOVIMIENTOS ()
BEGIN
DECLARE exit handler for SQLEXCEPTION
BEGIN
ROLLBACK;
END;
DECLARE exit handler for SQLWARNING
BEGIN
ROLLBACK;
END;
START TRANSACTION;
DECLARE saldo_cuen DECIMAL DEFAULT 0;;
SET @Importe=200;
SET @CuentaOrigen=3;
SET @CuentaDestino=4;
SET saldo_cuen=(SELECT saldo
from CUENTAS where IDCuenta=IDCuenta)
if(@importe<=saldo_cuen) then
UPDATE CUENTAS
SET Saldo=Saldo-@Importe
WHERE IDCuenta=@CuentaOrigen;
INSERT INTO Movimientos
(IDCuenta, SaldoAnterior, SaldoPosterior, Importe)
SELECT
@CuentaOrigen, saldo+@Importe, saldo, @Importe
FROM
CUENTAS
WHERE IDCuenta=@CuentaOrigen;
UPDATE CUENTAS
SET Saldo=Saldo+@Importe
WHERE IDCuenta=@CuentaDestino;
INSERT INTO Movimientos
(IDCuenta, SaldoAnterior, SaldoPosterior, Importe)
SELECT
@CuentaDestino, saldo-@Importe, saldo, @Importe
FROM CUENTAS
WHERE
IDCuenta=@CuentaDestino;
COMMIT;
else
ROLLBACK;
END IF;
END //
DELIMITER ;
me marca error en la declaración
Valora esta pregunta


0