Главная страница
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.059 c
1-41392
AlEn
2003-10-30 10:26
2003.11.13
MainMenu в MDI


3-40866
Term
2003-10-20 16:41
2003.11.13
Как правильно обрабатывать событие OnFilterRecord?


9-40778
Никита
2003-05-08 18:49
2003.11.13
Помогите решить маленькую задачку !!!


1-41729
Saturn
2003-11-03 15:45
2003.11.13
Хитрый вопрос. :)


7-42174
Tihomirov
2003-08-30 09:04
2003.11.13
Индификация железа