Вниз
Скачать: CL | DM;

Подскажите, как заставить Oracle выполнить мат. выражение ?   Найти похожие ветки 

← →
Termik ©   (2002-04-23 09:51) [0]

Стоит проблема: в таблице записано математическое выражение типа: "5+3*8..." и т.д. Как заставить сервер его выполнить ? В выражении могут быть также использованы скобки и функции (написанные мной и встроенные). Анализатор писать в лом :)) Может, есть другой выход ?
Заранее благодарю.


← →
Lusha ©   (2002-04-23 10:13) [1]

SELECT 5+3*8... FROM DUAL;


← →
roottim   (2002-04-23 10:22) [2]

1. вытаскиваеш это выражение из табл
2. динамически формируеш скл (либо на делфе либо ХП)
если те функции(ХП) нормально написаны на сервере.. должно выполниться!


← →
IPisk ©   (2002-04-23 10:35) [3]

Сначала создай свою функцию:

CREATE OR REPLACE function My_test(sq in varchar2)
return varchar2
is
rez varchar2(50);
begin
execute immediate "select "||sq||" from dual" into rez;
return rez;
EXCEPTION
WHEN NO_DATA_FOUND THEN return null;
End My_test;
/


И вторую функцию


Затем пиши
select my_test(<тут должна быть твоя функция, возвращающая текст формулы>) from dual




Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.009 c
14-64785
alex9999
2002-04-10 04:01
2002.05.20
ну так... про жизнь


3-64514
yennifaire
2002-04-22 18:02
2002.05.20
Почему он выдаёт


14-64811
alexandr
2002-04-11 08:57
2002.05.20
test


14-64813
MJH
2002-04-05 18:16
2002.05.20
Владельцам Vortex2 посвящается...


3-64532
ProfiUgl
2002-04-23 15:23
2002.05.20
ADOQuery1 ->> ADOQuery2




   Наверх