RUN PROCEDURE IN MYSQL with two arguments -


i trying create function calculate lateral area of cylinder.

delimiter $$  drop procedure if exists arealateral$$ create procedure arealateral(input_number,input_number) begin declare raio decimal(10,5); declare alt decimal (10,5); set raio = input_number; set alt = input_number; select 2*pi()*raio*alt; end$$ delimiter; 

when run

call arealateral(1,1)$$ 

the error appear

error 1318 (42000): incorrect number of arguments procedure aula3.arealateral; expected 0, got 2 

updated: change to

drop procedure if exists arealateral;  create procedure arealateral(in raio decimal(10,5), in alt decimal(10,5)) select 2*pi()*raio*alt; 

sqlfiddle

update2: based on subsequent question posted in comments should utilize functions

create function arealateral(raio decimal(10,5), alt decimal(10,5)) returns decimal(10,5) deterministic return 2*pi()*raio*alt;  create function areatotal(raio decimal(10,5), alt decimal (10,5))  returns decimal(10,5) deterministic return 2*areac(raio) + arealateral(raio,alt); 

then can call them other function

select areatotal(1,1); select arealateral(1,1); 

don't forget create areac function.

sqlfiddle


Comments