MySQL Forums
Forum List  »  Spanish

Definir variables sin tener que mostrarlas con un select
Posted by: Aaron Soutadet
Date: June 18, 2022 02:56PM

Buenas tardes!
Tengo un procedimiento que sirve para conocer los intervalos disponibles o no disponibles para una reserva de hotel. Aun no lo tengo terminado, pero lo voy probando de a poco. El procedimiento funciona, pero el problema es que cada vez que declaro una variable con un select, ésta se muestra por pantalla (estoy usando Visual Studio Code). Necesito declarar las variables de alguna otra forma que no sear por select. Caso contrario todo se vuelve lento y encima le estoy pasando al que hace el codigo backend un monton de tablitas que no le sirven para nada.
Como puedo hacer? Aqui copio el codigo que tengo, el cual llama a otro procedimiento (llenando reservas) que devuelve una tablita de 465 registros con dos columnas, una de id y otra de valor (un int que significa cuantas habitaciones reservadas hay para cada id). El problema aparece cuando el codigo se pone a mostrar las variables @ocupadas y @ocupadas_siguiente. Se me abren un monton de ventanas mostrando esas variables.
Podrian ayudarme? muchas gracias!!

drop procedure if exists fechas_disponibles;
create procedure fechas_disponibles(id_product BIGINT,available_rooms int)
begin
declare m int;
declare n int;
set n=0;
set m=0;
call llenandoReservas(id_product);
CREATE TEMPORARY TABLE indices_disponibles (id int, indice int, ocupacion int, indice_siguiente int, ocupacion_siguiente int);
select @total_dias := count(*) from disponibilidad;
buscando_disponibilidad:loop
set m=m+1;
select @ocupadas := valor from disponibilidad where id = m;
select @ocupadas_siguiente := valor from disponibilidad where id = m+1;
if @ocupadas_siguiente != @ocupadas THEN
set n=n+1;
insert into indices_disponibles (id,indice,ocupacion,indice_siguiente,ocupacion_siguiente) values (n,m,@ocupadas , m+1, @ocupadas_siguiente) ;
end if;
if m+1=@total_dias THEN
leave buscando_disponibilidad;
end if;
end loop;
select * from indices_disponibles;
end
call fechas_disponibles(7,5);

Options: ReplyQuote


Subject
Views
Written By
Posted
Definir variables sin tener que mostrarlas con un select
394
June 18, 2022 02:56PM


Sorry, you can't reply to this topic. It has been closed.

Content reproduced on this site is the property of the respective copyright holders. It is not reviewed in advance by Oracle and does not necessarily represent the opinion of Oracle or any other party.