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;
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.
Comments
Post a Comment