How to make automated task in Oracle

কোন একটা প্রোগ্রাম/কাজ একটা নির্দিষ্ট সময় পর পর স্বয়ংক্রিয় ভাবে চালাতে DBMS_SCHEDULER প্যাকেজ ব্যাবহার করা হয়। যেমনঃ দিন শেষে আপনার একটা টেবিল উপডেট করতে হয় অথবা মাস শেষে স্যালারি টেবিল উপডেট করতে হয়। এ সব কাজ স্বয়ংক্রিয় ভাবে করতে আমরা DBMS_SCHEDULER প্যাকেজ ব্যাবহার করি।

এ জন্য প্রথমেই আপনার প্রয়োজনীয় প্রোগ্রামটা তৈরি করে নিন। মনে করি আপনার salary_update_pro নামে একটা প্রসিডিউর আছে যেটা প্রতিদিন রাত 12:00 মিনিটে উপডেট করতে হয়। তাহলে আমি নিচের মত করে একটা জব তৈরি করব।

BEGIN
  DBMS_SCHEDULER.create_job (
    job_name        => 'test_full_job_definition',
    job_type        => 'PLSQL_BLOCK',
    job_action      => 'BEGIN salary_update_pro; END;',
    start_date      => SYSTIMESTAMP,
    end_date        => null,
    repeat_interval => 'freq=daily; byhour=0; byminute=0; bysecond=0;',
    enabled         => TRUE,
    comments        => 'Job defined entirely by the CREATE JOB procedure.');
END;

প্যারামিটার গুলোর বর্ননাঃ

  • job_name: যে জবটা তৈরি করছেন তার একটা মিনিংফুল নাম। যাতে পরে নাম দেখেই বুঝা যায় একটা কি সম্পর্কিত জব।
  • job_type: কি ধরনের প্রোগ্রাম রান করবে তার টাইপ।
  • job_action: যে প্রোগ্রামটা রান করবে তা এখানে স্পেসিফায় করতে হবে।
  • start_date: জবটা কখন থেকে রান করবে তা এখানে টাইমস্ট্যাম্প ফরমেটে দিতে হবে।
  • repeat_interval: কত সময় পর পর রান করবে তা এখানে সেট করে দিতে হবে।
  • end_date: জবটা যদি একটা নির্দিষ্ট সময় বন্ধ করে দিতে চান তাহলে এখানে টাইমস্ট্যাম্প ফরমেটে দিতে হবে।
  • enabled: জব এনাবল না ডিজেবল।
  • comments: জব সম্পর্কিত কোন মন্তব্য থাকলে তা এখানে দিবেন।

repeat_interval: প্যারামিটারগুলোর মধ্যে সবচেয়ে important হল repeat_interval কেননা এর উপর ডিপেন্ড করে আপনার প্রোগ্রাম রান করবে। বিভিন্ন হতে পারে যেমনঃ daily, weekly, minutely, hourly etc.

repeat_interval = frequency_clause
  [; interval=?] [; bymonth=?] [; byweekno=?] 
  [; byyearday=?] [; bymonthday=?] [; byday=?] 
  [; byhour=?] [; byminute=?] [; bysecond=?]

frequency_clause = "FREQ" "=" frequency
   frequency = "YEARLY" | "MONTHLY" | "WEEKLY" | "DAILY" | 
   "HOURLY" | "MINUTELY" | "SECONDLY"

Example:
Everyday mid night:

'freq=daily; byhour=0; byminute=0; bysecond=0;'

Every hour:

'freq=hourly; byminute=0; bysecond=0;'

Every minute:

'freq=minutely; bysecond=0;'

Every 5 minute:

'freq=minutely; interval=5; bysecond=0;'

Every Monday at 09:00:

'freq=weekly; byday=mon; byhour=9; byminute=0; bysecond=0;'

Every Monday, Wednesday and Friday at 06:00:

'freq=weekly; byday=mon,wed,fri; byhour=6; byminute=0; bysecond=0;'

একটা জব ক্রিয়েট করার সাথে সাথে সেটা চলতে থাকে। তবে আপনি ইচ্ছা করলে stop_job এবং run_job এর মাধ্যমে বন্ধ অথবা চালু করতে পারেন।

BEGIN
  -- Run job synchronously.
  DBMS_SCHEDULER.run_job (job_name            => 'test_full_job_definition',
                          use_current_session => TRUE);
  -- Stop jobs.
  DBMS_SCHEDULER.stop_job (job_name => 'test_full_job_definition, test_prog_sched_job_definition');
END

ড্রপ জবঃ কোন জব মুছে ফেলতে ড্রপ জব কমান্ড ব্যাবহার হয়।

BEGIN
  DBMS_SCHEDULER.drop_job (job_name => 'test_sched_job_definition');
END;

ভিউইং এক্সিস্টিং জবঃ জব সম্পর্কিত সমস্ত ডাটা DBA_SCHEDULER_JOBS, ALL_SCHEDULER_JOBS এবং USER_SCHEDULER_JOBS এই তিনটা ভিউ-এ থাকে। আপনার প্রয়োজন অনুযায়ী উপরোক্ত ভিউ থেকে কুয়েরি করে দেখতে পারেন।

এই হল DBMS_SCHEDULER নিয়ে বেসিক কথা বার্তা। আপনি চাইলে DBMS_SCHEDULER দিয়ে আরও কমপ্লেক্স কাজ করতে পারেন, বিস্তারিত দেখুন Oracle Doc -এ।

Published by

Ali Asgor

Graduate in GES, OCP holder, Self-motivated app developer, Programming lover, Lazy person...

6 thoughts on “How to make automated task in Oracle”

  1. Aviator Spribe играть на гривны казино
    I am final, I am sorry, but it absolutely another, instead of that is necessary for me.

    Погрузитесь в азартное приключение с автоматом Aviator Spribe играть вместе с нами!

  2. Aviator Spribe скачать казино
    The nice message
    Добро пожаловать в захватывающий мир авиаторов! Aviator – это увлекательная игра, которая позволит вам окунуться в атмосферу боевых действий на небе. Необычные графика и захватывающий сюжет сделают ваше путешествие по воздуху неповторимым.

    Играйте в Aviator Spribe играть на компьютере и наслаждайтесь азартом!
    Aviator игра позволит вам почувствовать себя настоящим пилотом. Вам предстоит совершить невероятные маневры, выполнять сложные задания и сражаться с противниками. Улучшайте свой самолет, чтобы быть готовым к любым ситуациям и становиться настоящим мастером.
    Основные особенности Aviator краш игры:
    1. Реалистичная графика и физика – благодаря передовой графике и реалистичной физике вы почувствуете себя настоящим пилотом.
    2. Разнообразные режимы игры и миссии – в Aviator краш игре вы сможете выбрать различные режимы игры, такие как гонки, симулятор полетов и захватывающие воздушные бои. Кроме того, каждая миссия будет предлагать свои собственные вызовы и задачи.
    3. Улучшение и модернизация самолетов – в игре доступны различные модели самолетов, которые можно покупать и улучшать. Вы сможете устанавливать новое оборудование, улучшать двигательность и мощность своего самолета, а также выбирать различные варианты окраски и декорации.
    Aviator краш игра – это возможность испытать себя в роли авиатора и преодолеть все сложности и опасности воздушного пространства. Почувствуйте настоящую свободу и адреналин в Aviator краш игре онлайн!
    Играйте в «Авиатор» в онлайн-казино Pin-Up
    Aviator краш игра онлайн предлагает увлекательную и захватывающую игровую атмосферу, где вы становитесь настоящим авиатором и сражаетесь с самыми опасными искусственными интеллектами.
    В этой игре вы должны показать свое мастерство и смекалку, чтобы преодолеть сложности многочисленных локаций и уровней. Вам предстоит собирать бонусы, уклоняться от препятствий и сражаться с врагами, используя свои навыки пилотирования и стрельбы.
    Каждый уровень игры Aviator краш имеет свою уникальную атмосферу и задачи. Будьте готовы к неожиданностям, так как вас ждут захватывающие повороты сюжета и сложные испытания. Найдите все пути к победе и станьте настоящим героем авиатором!
    Авиатор игра является прекрасным способом провести время и испытать настоящий адреналиновый разряд. Готовы ли вы стать лучшим авиатором? Не упустите свой шанс и начните играть в Aviator краш прямо сейчас!
    Aviator – играй, сражайся, побеждай!
    Aviator Pin Up (Авиатор Пин Ап ) – игра на деньги онлайн Казахстан
    Aviator игра предлагает увлекательное и захватывающее разнообразие врагов и уровней, которые не оставят равнодушными даже самых требовательных геймеров.
    Враги в Aviator краш игре онлайн представлены в самых разных формах и размерах. Здесь вы встретите группы из маленьких и быстрых врагов, а также огромных боссов с мощным вооружением. Разнообразие врагов позволяет игрокам использовать разные тактики и стратегии для победы.
    Кроме того, Aviator игра предлагает разнообразие уровней сложности. Выберите легкий уровень, чтобы насладиться игровым процессом, или вызовите себе настоящий вызов, выбрав экспертный уровень. Независимо от выбранного уровня сложности, вы получите максимум удовольствия от игры и окунетесь в захватывающий мир авиаторов.
    Играйте в Aviator и наслаждайтесь разнообразием врагов и уровней, которые позволят вам почувствовать себя настоящим авиатором.

Leave a Reply

Your email address will not be published. Required fields are marked *