Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2002.05.09;
Скачать: [xml.tar.bz2];

Вниз

RANDOM в ORACLE   Найти похожие ветки 

 
bas1   (2002-04-16 10:36) [0]

Есть-ли что-нибудь похожее в Oracle, или как взять случайное число в хрон. проц.


 
Val   (2002-04-16 10:41) [1]

как вариант: передать как параметр из приложения


 
Johnny Smith   (2002-04-16 11:03) [2]

Есть такой пакет в Оракле - DBMS_RANDOM.
Описание - в файле %ORA_HOME%rdbms80\admin\dbmsrand.sql


 
Johnny Smith   (2002-04-16 11:14) [3]

Вот и примерчик:

declare
x binary_integer;
begin
DBMS_RANDOM.initialize(234322);
x:=DBMS_RANDOM.random;
DBMS_RANDOM.terminate;
dbms_output.put_line(to_char(x));
end;
/


 
bas1   (2002-04-16 11:22) [4]

Огроменное спасибо


 
bas1   (2002-04-16 11:57) [5]

>>Johnny Smith
Я что-то не совсем понял - DBMS_RANDOM.random выводит одно и то же число и причем непонятно какое - я думал, что DBMS_RANDOM.initialize(хх) ставит предел выводимому значению, а он не понятно что ставит.


 
Johnny Smith   (2002-04-16 12:53) [6]

Я тут поподробнее поюзал это дело, и мне кажется, что здесь другое: initialize просто инициализирует работу пакета. Введенное число (размерностью не менее 5 знаков) просто -напросто является основой для того результата, который генерит функция DBMS_RANDOM.random.



 
bas1   (2002-04-16 13:56) [7]

а как быть если мене надо, например, случайное число в диапазоне от 0 до 10


 
Johnny Smith   (2002-04-16 14:08) [8]

Можно брать от результата функции какой-либо разряд (например, последнюю цифру) или хешировать этот результат


 
Johnny Smith   (2002-04-16 14:24) [9]

Я проконсультировался с нашим специалистом. Всплыло вот что: при инициализации ПЕРВЫЙ результат функции действительно постоянен при постоянном параметре в INITIALIZE. Зато потом идут нормальные :-) случайные числа. НО! До того момента, когда ты скажешь DBMS_RANDOM.terminate.


 
bas1   (2002-04-16 14:25) [10]

спасибо - буду думать


 
passm   (2002-04-16 15:26) [11]

С Oracle не работал, но если там чего-то не хватает, то почему бы не написать UDF? Здесь будет все в твоих руках.


 
bas1   (2002-04-16 16:36) [12]

>>passm
я уже сделал подругому
просто думал может есть что-то стандартное - зачем гордить огород, когда надо только цветок посадить
Да и не хотелось что-бы ф-ия работала долго



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

Форум: "Базы";
Текущий архив: 2002.05.09;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.005 c
1-26057
Димка
2002-04-25 18:45
2002.05.09
Как запретить кнопку


6-26202
_Serega_
2002-02-20 07:57
2002.05.09
Как убрать сообщения об ошибках ?


4-26285
JAndrey
2002-02-28 07:12
2002.05.09
Где найти описание USER32.dll, Kernel32.dll ..........


14-26250
vopros
2002-03-29 15:43
2002.05.09
Гибнет форум (этот).IronHawk задай еще пару вопросов а?


3-25991
Yuraz
2002-04-15 15:46
2002.05.09
2 вопроса, 1) как проверить на компе есть ли ADO библ.





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский