Funciones mysql
Tengo otro problemilla y es que ahora debo crear una función o procedimiento que reciba un numero entero y retorne su equivalente a binario. Y otra que retorne el equivalente en hexadecimal . Intento hacerlo como se haría normalmente en programación pero a la hora de declarar un vector o array esta el problema ya que no tengo ni idea de como se hace en mysql esto es lo que tengo hasta ahora
delimiter //
drop function if exists binario; //
create function binario(dividendo int)returns int
begin
declare cociente integer;
declare residuo integer;
declare resultado integer;
declare i integer;
declare vector[10] integer;
while(dividendo>0)do
cociente=dividendo/2;
residuo=dividendo%2;
dividendo=cociente;
vector=residuo;
set i:=i+1;
end while;
set i:=i-1;
while(i>=0)do
set resultado:=vector;
set i:=i-1;
return resultado
end while;
end; //
delimiter ;
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that
corresponds to your MySQL server version for the right syntax to use near '[10];
while(dividendo>0)do
cociente=dividendo/2;
residuo=dividend' at line 7
Que pena la molestia. Y si de pronto tienes algún código para hacerlo de entero a hexadecimal se lo agradecería todavía más igual gracias por la atención.
delimiter //
drop function if exists binario; //
create function binario(dividendo int)returns int
begin
declare cociente integer;
declare residuo integer;
declare resultado integer;
declare i integer;
declare vector[10] integer;
while(dividendo>0)do
cociente=dividendo/2;
residuo=dividendo%2;
dividendo=cociente;
vector=residuo;
set i:=i+1;
end while;
set i:=i-1;
while(i>=0)do
set resultado:=vector;
set i:=i-1;
return resultado
end while;
end; //
delimiter ;
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that
corresponds to your MySQL server version for the right syntax to use near '[10];
while(dividendo>0)do
cociente=dividendo/2;
residuo=dividend' at line 7
Que pena la molestia. Y si de pronto tienes algún código para hacerlo de entero a hexadecimal se lo agradecería todavía más igual gracias por la atención.
1 Respuesta
Respuesta
1