powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Как выставить расписание
38 сообщений из 38, показаны все 2 страниц
Как выставить расписание
    #39823177
Никита А
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем привет, не могу разобраться как в job выставить необходимое время выполнения. Нужно расписание на ежедневное выполнение в диапазоне с 8:30 до 9:30 каждую минуту.
Когда пробую выставить с 8:30, 8:31, 8:32... дохожу до 9:00 всё сливается в едино.
...
Рейтинг: 0 / 0
Как выставить расписание
    #39823178
Никита А
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Как альтернативу думаю создать 2 задания, для выполнения промежутка с 8:30 до 8:59 и с 9:00 до 9:30
...
Рейтинг: 0 / 0
Как выставить расписание
    #39823179
Никита А
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Или несколько календарей добавить с этими диапазона, так будет правильнее.
...
Рейтинг: 0 / 0
Как выставить расписание
    #39823192
Фотография -2-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Никита А,

minutely
...
Рейтинг: 0 / 0
Как выставить расписание
    #39823195
Никита А
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
-2-Никита А,

minutely
Поподробнее можно?
...
Рейтинг: 0 / 0
Как выставить расписание
    #39823209
Фотография Fogel
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Никита А-2-Никита А,

minutely
Поподробнее можно?
можно
...
Рейтинг: 0 / 0
Как выставить расписание
    #39823211
Фотография -2-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Никита А-2-Никита А,

minutely
Поподробнее можно?Невнимательно не прочел про :30.
Тогда bytime
...
Рейтинг: 0 / 0
Как выставить расписание
    #39823271
Никита А
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
-2-,

Вы меня не понимаете, мне необходимо чтобы запускалась процедура каждый день с 8:30 до 9:30 каждую минуты, этого интервала
...
Рейтинг: 0 / 0
Как выставить расписание
    #39823274
Фотография -2-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Никита Акаждый день с 8:30 до 9:30 каждую минуты, этого интервалаbytime
...
Рейтинг: 0 / 0
Как выставить расписание
    #39823279
Вячеслав Любомудров
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Про документацию предлагал уже кто-нибудь?

А вообще на форуме есть достаточно много примеров, когда время следующего запуска устанавливалось из вызываемой рутины
...
Рейтинг: 0 / 0
Как выставить расписание
    #39823299
Фотография Stax
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Никита Авыполнение в диапазоне с 8:30 до 9:30 каждую минуту.

не проще стартануть раз в 8:30
и в цикле "каждую минуту" запускать обработку

.....
stax
...
Рейтинг: 0 / 0
Как выставить расписание
    #39823308
Никита А
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
-2-,

Мне непонятно, как прописать интервал с 8:30 до 9:30
Если пытаюсь добавить через конструктор, то получается это.

Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
FREQ=
    DAILY;
BYDAY=
    MON,
    TUE,
    WED,
    THU,
    FRI,
    SAT,
    SUN;
BYHOUR=
    8,
    9;
BYMINUTE=
    0,
    1,
    2,
    3,
    4,
    5,
    6,
    7,
    8,
    9,
    10,
    11,
    12,
    13,
    14,
    15,
    16,
    17,
    18,
    19,
    20,
    21,
    22,
    23,
    24,
    25,
    26,
    27,
    28,
    29,
    30,
    31,
    32,
    33,
    34,
    35,
    36,
    37,
    38,
    39,
    40,
    41,
    42,
    43,
    44,
    45,
    46,
    47,
    48,
    49,
    50,
    51,
    52,
    53,
    54,
    55,
    56,
    57,
    58,
    59;
BYSECOND=
    0


Что мне здесь нужно изменить, под мои условия?
...
Рейтинг: 0 / 0
Как выставить расписание
    #39823595
merch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Никита А,

какая версия Оракла?
...
Рейтинг: 0 / 0
Как выставить расписание
    #39823598
Фотография andrey_anonymous
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Никита А
Код: plsql
1.
FREQ=  DAILY;


Ну это как бы не раз в минуту...
...
Рейтинг: 0 / 0
Как выставить расписание
    #39823819
Никита А
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
merchНикита А,

какая версия Оракла?

Oracle Database 11g Release 11.2.0.3.0 - 64bit Production
...
Рейтинг: 0 / 0
Как выставить расписание
    #39823820
Никита А
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
andrey_anonymousНикита А
Код: plsql
1.
FREQ=  DAILY;


Ну это как бы не раз в минуту...

А как по другому сделать, чтобы каждый день запускалось тогда?
...
Рейтинг: 0 / 0
Как выставить расписание
    #39823821
Никита А
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
andrey_anonymousНикита А
Код: plsql
1.
FREQ=  DAILY;


Ну это как бы не раз в минуту...

Когда выбираю диапазон минутный, пропадают дополнительные настройки. Есть возможность только прикрепить одно или несколько расписаний. Как должно выглядеть расписание, чтобы срабатывало каждый день с 8:30 до 9:30 каждой минуты
...
Рейтинг: 0 / 0
Как выставить расписание
    #39824385
SkilledJunior
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Создай одно ежедневное задание, в нем запуск создания однократных заданий на интересующее время, для однократных dbms_job.submit в помощь и commit не забудь.
...
Рейтинг: 0 / 0
Как выставить расписание
    #39824395
Фотография andrey_anonymous
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Никита АЕсть возможность только прикрепить
Крепитесь.
Calendaring Syntax
...
Рейтинг: 0 / 0
Как выставить расписание
    #39824730
Никита А
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
SkilledJuniorСоздай одно ежедневное задание, в нем запуск создания однократных заданий на интересующее время, для однократных dbms_job.submit в помощь и commit не забудь.

Поставил интервал на 2 расписание, в одном прописал с 8:30 до 8:59, в другом соответственно с 9:00 до 9:30
...
Рейтинг: 0 / 0
Как выставить расписание
    #39824733
Никита А
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
andrey_anonymousНикита АЕсть возможность только прикрепить
Крепитесь.
Calendaring Syntax
Я так понимаю, расписание не приспособлено для указания интервалов в определенных промежутков, как в моём случае.
Единственное что может облегчить жизнь, это на pl/sql написать цикл, который создаст кучу расписаний поминутно в нужном интервале.
...
Рейтинг: 0 / 0
Как выставить расписание
    #39824735
Никита А
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Никита АSkilledJuniorСоздай одно ежедневное задание, в нем запуск создания однократных заданий на интересующее время, для однократных dbms_job.submit в помощь и commit не забудь.

Поставил в job интервал повторение на 2 расписания, в одном прописал с 8:30 до 8:59, в другом соответственно с 9:00 до 9:30
Код: plsql
1.
FREQ=DAILY;BYDAY=MON,TUE,WED,THU,FRI,SAT,SUN;BYHOUR=8,20;BYMINUTE=30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59;BYSECOND=0


и
Код: plsql
1.
FREQ=DAILY;BYDAY=MON,TUE,WED,THU,FRI,SAT,SUN;BYHOUR=9,21;BYMINUTE=0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30;BYSECOND=0
...
Рейтинг: 0 / 0
Как выставить расписание
    #39824835
Да ну
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Никита АFREQ=DAILY;BYDAY=MON,TUE,WED,THU,FRI,SAT,SUN;BYHOUR=8,20;BYMINUTE=30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59;BYSECOND=0

и

FREQ=DAILY;BYDAY=MON,TUE,WED,THU,FRI,SAT,SUN;BYHOUR=9,21;BYMINUTE=0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30;BYSECOND=0

с 20:30 до 21:30 тоже нужно? (красным)

Можно еще извратиться с таймзоной для start_date - если уменьшать offset от нормального (для Москвы - GMT+03:00), то время запуска соответственно увеличится ( для примера на картинке будет запускаться каждую минуту с 8:30 до 9:29)
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
  sys.dbms_scheduler.create_job(
    job_name            => 'ME.JOB',
    job_type            => 'PLSQL_BLOCK',
    job_action          => 'begin null; end;',
    start_date          => TIMESTAMP '2019-06-01 08:00:00 +2:30',
    repeat_interval     => 'Freq=Minutely;ByHour=8',
    job_class           => 'DEFAULT_JOB_CLASS',
    enabled             => true
  );
...
Рейтинг: 0 / 0
Как выставить расписание
    #39824871
Никита А
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Да, вечером тоже надо.
Ваш вариант сработает только один раз, а мне нужно ежедневно.
Если надо было на день, поставил бы ежеминутную частоту и выставил начальное и конечное время.
...
Рейтинг: 0 / 0
Как выставить расписание
    #39824881
Да ну
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Никита АВаш вариант сработает только один раз, а мне нужно ежедневно.Сработает ежедневно
...
Рейтинг: 0 / 0
Как выставить расписание
    #39825893
Никита А
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Да нуСработает ежедневно
Засчёт чего, он будет срабатывать ежедневно? Ведь в частоте срабатывания не указанно про ежедневное выполнение.
...
Рейтинг: 0 / 0
Как выставить расписание
    #39825918
Фотография -2-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Никита АДа нуСработает ежедневно
Засчёт чего, он будет срабатывать ежедневно? Ведь в частоте срабатывания не указанно про ежедневное выполнение.Следуя этой логике daily без указания месяцев и лет не должно выполняться ежемесячно, ежегодно,...
...
Рейтинг: 0 / 0
Как выставить расписание
    #39825925
Никита А
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость

Вы сами проверяли предложенный вариант?
...
Рейтинг: 0 / 0
Как выставить расписание
    #39825929
Фотография -2-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Никита А

Вы сами проверяли предложенный вариант?МЫ проверили. Поверишь на слово или проверишь проверку?
...
Рейтинг: 0 / 0
Как выставить расписание
    #39825930
Никита А
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
-2-,
Вы сами проверяли предложенный вариант?
У Вас написано, повторять каждую минуту Freq=Minutely, в 8 часов ByHour=8. Это как понимать, при ежеминутном повторе?
...
Рейтинг: 0 / 0
Как выставить расписание
    #39825932
Никита А
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
-2-МЫ проверили. Поверишь на слово или проверишь проверку?
Ну запустится задание в 8, а что его прервёт дальше?
...
Рейтинг: 0 / 0
Как выставить расписание
    #39825956
Фотография -2-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Никита АНу запустится задание в 8, а что его прервёт дальше?Конец света, например.
...
Рейтинг: 0 / 0
Как выставить расписание
    #39826149
merch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Никита А,

Дискуссия так затянулась, что уже придумал бы велосипед.
Стартуй каждую минуту, а в job_action в pl/sql проверяй, твое время или нет.

Хотя нечто подобное, мсье Stax уже предлагал.
...
Рейтинг: 0 / 0
Как выставить расписание
    #39826164
j2k
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Никита А, а использование dbms_scheduler принципиально? Через dbms_job нарисовать вроде несложно.
...
Рейтинг: 0 / 0
Как выставить расписание
    #39826266
oragraf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Никита А,

EVALUATE_CALENDAR_STRING
...
Рейтинг: 0 / 0
Как выставить расписание
    #39826278
Фотография andrey_anonymous
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
j2kНикита А, а использование dbms_scheduler принципиально? Через dbms_job нарисовать вроде несложно.
Парни, ну как так-то?!
И ведь ссылку на доку дал... один хрен никто не чтит.
Простейший способ:

Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
begin
  dbms_scheduler.create_schedule(schedule_name   => 'DAILY_830_859',
                                 start_date      => to_date(null),
                                 repeat_interval => 'Freq=Daily;ByHour=8;ByMinute=30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59',
                                 end_date        => to_date(null),
                                 comments        => '8:30-8:59');
  dbms_scheduler.create_schedule(schedule_name   => 'DAILY_900_929',
                                 start_date      => to_date(null),
                                 repeat_interval => 'Freq=Daily;ByHour=9;ByMinute=0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29',
                                 end_date        => to_date(null),
                                 comments        => '9:00-9:29');
end;
/
PL/SQL procedure successfully completed

DECLARE
  start_date        TIMESTAMP;
  return_date_after TIMESTAMP;
  next_run_date     TIMESTAMP;
BEGIN
  start_date := to_timestamp_tz('01-06-2019 00:00:00','DD-MM-YYYY HH24:MI:SS');
  return_date_after := start_date;
  FOR i IN 1..70 LOOP
    DBMS_SCHEDULER.EVALUATE_CALENDAR_STRING('DAILY_830_859,DAILY_900_929'
      , start_date, return_date_after, next_run_date);
    DBMS_OUTPUT.PUT_LINE(to_char(next_run_date,'"next_run_date date is: " yyyy-mm-dd hh24:mi:ss'));
    return_date_after := next_run_date;
  END LOOP;
END;
/
next_run_date date is:  2019-06-01 08:30:00
next_run_date date is:  2019-06-01 08:31:00
next_run_date date is:  2019-06-01 08:32:00
next_run_date date is:  2019-06-01 08:33:00
...
next_run_date date is:  2019-06-01 08:57:00
next_run_date date is:  2019-06-01 08:58:00
next_run_date date is:  2019-06-01 08:59:00
next_run_date date is:  2019-06-01 09:00:00
next_run_date date is:  2019-06-01 09:01:00
...
next_run_date date is:  2019-06-01 09:27:00
next_run_date date is:  2019-06-01 09:28:00
next_run_date date is:  2019-06-01 09:29:00
next_run_date date is:  2019-06-02 08:30:00
next_run_date date is:  2019-06-02 08:31:00
next_run_date date is:  2019-06-02 08:32:00
next_run_date date is:  2019-06-02 08:33:00
next_run_date date is:  2019-06-02 08:34:00
next_run_date date is:  2019-06-02 08:35:00
next_run_date date is:  2019-06-02 08:36:00
next_run_date date is:  2019-06-02 08:37:00
next_run_date date is:  2019-06-02 08:38:00
next_run_date date is:  2019-06-02 08:39:00

PL/SQL procedure successfully completed

SQL> 
...
Рейтинг: 0 / 0
Как выставить расписание
    #39826291
Lary Denis
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
andrey_anonymous,

эх, 2015 год.. как давно это было.
...
Рейтинг: 0 / 0
Как выставить расписание
    #39826302
Фотография andrey_anonymous
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Lary Denisэх, 2015 год.. как давно это было.
Мммм?
...
Рейтинг: 0 / 0
38 сообщений из 38, показаны все 2 страниц
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Как выставить расписание
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]