Oracle - Almacenar una fórmula en un string

 
Vista:

Almacenar una fórmula en un string

Publicado por Gema (15 intervenciones) el 24/06/2010 17:17:35
Hola, necesito almacenar una fórmula en un string, por ej. a='2*0,01*b', como luego puedo recuperar en un pl/sql este string y sustituir la variable b por un valor y que se calcule el resultado:
si b=4 => resultado = 2*0,01*4 = 0,08

sin que me de error de tipo de dato. Gracias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Almacenar una fórmula en un string

Publicado por ro (3 intervenciones) el 28/07/2010 18:16:22
declare
v_resultado number;
v_formula varchar2(50) := '2*0,01*b';
begin
---el separador de decimales tiene que ser punto
v_formula := replace(v_formula, ',', '.');
v_formula := replace(v_formula, 'b', '4');
EXECUTE IMMEDIATE 'declare
v_dato number;
begin
select '||v_formula||'
into v_dato
from dual;
:v_resultado := v_dato;
end;'
USING OUT v_resultado;
dbms_output.put_line(v_resultado);
end;
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar