Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.11.13;
Скачать: CL | DM;

Вниз

Толку от UDF RAND() ?   Найти похожие ветки 

 
kaif ©   (2003-10-15 15:47) [0]

В библиотеке ib_udf.dll есть такая функция:

DECLARE EXTERNAL FUNCTION rand
RETURNS DOUBLE PRECISION BY VALUE
ENTRY_POINT "IB_UDF_rand" MODULE_NAME "ib_udf";

Попытка соорудить с ее помощью что-то вроде случайных цен в справочнике товаров:

update goods set price = rand()

назначает всем товарам случайную, но одинаковую цену.

Я хочу понять, как народ использует rand() и использует ли вообще?


 
kaif ©   (2003-10-15 15:53) [1]

Я даже попытался так:

create procedure update_goods_prices
as
declare variable id integer;
declare variable price decimal(8,2);
begin
for select id from goods
into :id
do
begin
price = 100 + 200 * rand();
update goods
set price = :price
where id = :id;
end
end

==================
execute procedure update_goods_prices
==================
Пофиг! все цены ОДИНАКОВЫЕ.

Что делать?


 
Vlad ©   (2003-10-15 15:56) [2]

Продавать товары по одинаковой цене.
Это лучше, чем по случайной :)


 
Johnmen ©   (2003-10-15 16:00) [3]

>kaif ©

Я не использую, но предполагаю, что надо перед вызовом rand сделать инициализацию генерации случ. чисел. Д.б.соответствующая ф-ия.
По кр. мере в RFUNC именно так.


 
kaif ©   (2003-10-15 16:21) [4]

Vlad © (15.10.03 15:56) [2]
:)

2 Johnmen © (15.10.03 16:00) [3]
Я тоже так поначалу думал, но что-то в документации по UDF не видно никакой функции, инициализирующей RAND. Все, что там написано к RAND это:

Returns a random number between 0 and 1. The current time is used to seed the random number generator.

Видимо под current time понимается время старта транзакции (больше мне в голову ничего не приходит).

А RFUNC это что?


 
Johnmen ©   (2003-10-15 16:36) [5]

>kaif ©

Это библиотека UDF"ов. Я ей пользуюсь...:)



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

Текущий архив: 2003.11.13;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.024 c
6-41787
Strayker
2003-09-18 23:40
2003.11.13
Как выключить все компьютеры в сети?


3-41096
Devourer
2003-10-22 16:47
2003.11.13
Delphi+Oracle


1-41671
Ungrund
2003-10-24 13:46
2003.11.13
Возможность просмотра dxf/dwg форматов


7-42192
ZioN
2003-08-28 15:13
2003.11.13
Работа с CD-Rom


7-42169
Camedia
2003-08-30 22:18
2003.11.13
Нужно чтобы хук работал по всей системе....