Модераторы: LSD
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> автозапуск, назначенный день и время 
V
    Опции темы
usver
Дата 13.10.2006, 04:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 107
Регистрация: 30.11.2005

Репутация: нет
Всего: 1



Доброго времени суток всем.
Такой вот вопрос. Есть база на серваке, есть SQL скрипт, который делает запрос. Как сделать что б этот скрипт запускался в заданное время, заданного числа??? 

Заранее благодарен за помощь.
PM MAIL   Вверх
ZeeLax
Дата 13.10.2006, 05:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 4388
Регистрация: 20.8.2006
Где: Алма-Ата

Репутация: нет
Всего: 88



Как только скажете, что за сервер, что за операционная система на нём, и что за версия СУБД - всё сразу станет ясно, может быть, вам и ответ сразу в голову придёт.

Это сообщение отредактировал(а) ZeeLax - 13.10.2006, 05:03


--------------------
Utility is when you have one telephone, luxury is when you have two, opulence is when you have three — and paradise is when you have none.
— Doug Larson
PM MAIL WWW ICQ Skype Jabber   Вверх
usver
Дата 13.10.2006, 05:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 107
Регистрация: 30.11.2005

Репутация: нет
Всего: 1



to ZeeLax, к сожалению точной информацией не владею. Операционка вероятнее всего 2003, СУБД - Oracle не ниже 8-го. я тут подумал... может не правильно выразился ... не скрипт, а запрос.... может это сиграет какую нибудь роль ....
PM MAIL   Вверх
Paradox
Дата 13.10.2006, 05:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник
Сообщений: 1135
Регистрация: 18.11.2002
Где: Россия

Репутация: 3
Всего: 1



можно сделать job c однократным выполнением без повторений
типа такого
Код

DECLARE
  X NUMBER;
BEGIN
  SYS.DBMS_JOB.SUBMIT
    ( job       => X 
     ,what      => 'BEGIN
  your_script;
END;  '
     ,next_date => TO_DATE('13.10.2006 10:50:52','dd/mm/yyyy hh24:mi:ss')
     ,INTERVAL  => 'null'
     ,no_parse  => TRUE
    );
  SYS.DBMS_OUTPUT.PUT_LINE('Job Number is: ' || TO_CHAR(x));
END;
/

COMMIT;

смотрите на пареметр what      =>

Добавлено @ 05:57 
как только такой job отработает так он сам из БД и удалится smile


--------------------
---
PM MAIL WWW   Вверх
usver
Дата 13.10.2006, 06:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 107
Регистрация: 30.11.2005

Репутация: нет
Всего: 1



to Paradox, спасибо. буду пробовать ... а если это надо что б ежемесячно запускалось определенного числа ??? есть варианты ???
PM MAIL   Вверх
Paradox
Дата 13.10.2006, 06:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник
Сообщений: 1135
Регистрация: 18.11.2002
Где: Россия

Репутация: 3
Всего: 1



можно 
INTERVAL  => TRUNC(LAST_DAY(SYSDATE)) + 1

вместо 1 впишите определенное число месяца

Добавлено @ 06:59 
если интервал не пуст то конечно джоб удалятся не будет, а отработает и будет ждать еще месяц чтобы выполнится и т.д. smile


--------------------
---
PM MAIL WWW   Вверх
usver
Дата 13.10.2006, 07:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 107
Регистрация: 30.11.2005

Репутация: нет
Всего: 1



to Paradox, сделал 
Код

DECLARE
  X NUMBER;
BEGIN
  SYS.DBMS_JOB.SUBMIT
    ( job       => X 
     ,what      => 'BEGIN
select a.name,b.socr,b.name,a.dom,a.korp,a.flat,tel
from gts.clients_fl a, ref_book.streets b
where tel=221500 and a.street_id=b.id and tel is not null
order by 1;
END;  '
     ,next_date => TO_DATE('13.10.2006 15:10:52','dd/mm/yyyy hh24:mi:ss')
     ,INTERVAL  => TRUNC(LAST_DAY(SYSDATE)) + 1
     ,no_parse  => TRUE
    );
  SYS.DBMS_OUTPUT.PUT_LINE('Job Number is: ' || TO_CHAR(x));
END;
/

COMMIT;


получил ошибки ...  

PM MAIL   Вверх
Paradox
Дата 13.10.2006, 07:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник
Сообщений: 1135
Регистрация: 18.11.2002
Где: Россия

Репутация: 3
Всего: 1



ошибки то какие ?
вот так попробуй

Код

DECLARE
  X NUMBER;
BEGIN
  SYS.DBMS_JOB.SUBMIT
    ( job       => X 
     ,what      => 'EXECUTE IMMEDIATE ''select a.name,b.socr,b.name,a.dom,a.korp,a.flat,tel from gts.clients_fl a, ref_book.streets b where tel=221500 and a.street_id=b.id and tel is not null order by 1;'';'
     ,next_date => TO_DATE('13.10.2006 15:10:52','dd/mm/yyyy hh24:mi:ss')
     ,INTERVAL  => 'TRUNC(LAST_DAY(SYSDATE)) + 1'
     ,no_parse  => TRUE
    );
  SYS.DBMS_OUTPUT.PUT_LINE('Job Number is: ' || TO_CHAR(x));
END;
/

COMMIT;



--------------------
---
PM MAIL WWW   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Oracle"
Zloxa
LSD

Данный раздел предназначен для обсуждения проблем с Oracle Database, другие продукты Oracle здесь не обсуждаются. Просьба при создании темы, придерживаться следующих правил:

  • при создании темы давайте ей осмысленное название, описывающее суть проблемы
  • указывайте используемую версию базы, способ соединения и язык программирования
  • при ошибках обязательно приводите код ошибки и сообщение сервера
  • приводите код в котором возникла ошибка, по возможности дайте тестовый пример демонстрирующий ошибку
  • при вставке кода используйте соответсвующие теги: [code=sql] [/code] для подсветки SQL и PL/SQL кода, [code=java] [/code] - для Java, и т.д.

  • документация по Oracle: 9i, 10g, 11g
  • книги по Oracle можно поискать здесь
  • действия модераторов можно обсудить здесь

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Zloxa, LSD.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Oracle | Следующая тема »


 




[ Время генерации скрипта: 0.0708 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.