cari
Rumahpangkalan dataOracleBagaimana untuk melaksanakan prosedur tersimpan dalam Oracle dengan kerap

Dalam aplikasi peringkat perusahaan, kami tidak boleh hanya bergantung pada pengguna untuk melakukan operasi manual untuk mencapai kefungsian yang diperlukan. Oleh itu, tugas berjadual adalah penting, yang amat berguna untuk melaksanakan pemprosesan latar belakang dan pemuatan data. Pangkalan data Oracle menyediakan prosedur tersimpan dan tugas berjadual untuk memudahkan kerja pembangun dan pentadbir. Dalam artikel ini, kami akan menumpukan pada kaedah menggunakan tugas berjadual Oracle untuk melaksanakan prosedur tersimpan dengan kerap.

Tugas berjadual Oracle

Tugas berjadual dalam pangkalan data Oracle boleh dibuat menggunakan pakej DBMS_SCHEDULER. Pakej ini membolehkan kami mencipta pekerjaan dengan keperluan penjadualan yang kompleks. Ia boleh menyokong pelbagai frekuensi seperti setiap jam, harian, mingguan, bulanan, tahunan, dll. Tugas berjadual juga boleh dilaksanakan pada tarikh dan masa tertentu, atau bahkan dalam zon waktu yang berbeza. Jenis objek berikut boleh dibuat menggunakan pakej DBMS_SCHEDULER.

  • Kerja: Unit tugasan yang dicipta semasa melaksanakan fungsi DBMS_SCHEDULER.CREATE_JOB, dijadualkan oleh penjadual secara berkala atau atas permintaan.
  • Kelas kerja: Sekumpulan tugasan berkaitan yang berkongsi peraturan had penggunaan sumber yang sama.
  • Had penggunaan sumber: Peraturan penggunaan sumber yang digunakan untuk mengawal pekerjaan dan kelas pekerjaan.
  • Rantaian: Urutan pekerjaan di mana penyiapan satu kerja mencetuskan pelaksanaan kerja lain.
  • Sesi: Proses yang dikaitkan dengan pelaksanaan kerja. Sesi boleh dilog dan dipantau untuk memahami pelaksanaan kerja.

Dalam artikel ini, kami akan menumpukan pada cara menggunakan DBMS_SCHEDULER untuk mencipta kerja dan mengikatnya pada prosedur tersimpan yang ingin kami laksanakan.

Buat prosedur tersimpan

Kita perlu membuat prosedur tersimpan terlebih dahulu untuk melaksanakan operasi tugasan yang ingin kita selesaikan. Di bawah ialah contoh mudah prosedur tersimpan yang akan memasukkan masa semasa ke dalam jadual.

CREATE OR REPLACE PROCEDURE INSERT_TIME
AS 
BEGIN
  INSERT INTO TIME_LOG (LOG_TIME) VALUES (SYSDATE);
  COMMIT;
END INSERT_TIME;

Buat Kerja

Dengan prosedur tersimpan di tangan, kami seterusnya perlu mencipta kerja untuk menjadualkan pelaksanaannya. Kerja yang akan kami buat akan memasukkan waktu semasa setiap pagi pada pukul 6. Di bawah ialah contoh menggunakan fungsi DBMS_SCHEDULER.CREATE_JOB untuk mencipta kerja ini.

BEGIN
  DBMS_SCHEDULER.CREATE_JOB (
          job_name        => 'INSERT_TIME_JOB',
          job_type        => 'STORED_PROCEDURE',
          job_action      => 'INSERT_TIME',
          start_date      => SYSTIMESTAMP,
          repeat_interval => 'FREQ=DAILY; BYHOUR=6;',
          enabled         => TRUE,
          comments        => 'Insert current time every day at 6 AM');
END;

Apabila menggunakan fungsi CREATE_JOB untuk mencipta kerja, kita perlu mengikut perihalan parameter berikut:

  • job_name: Nama kerja, yang mestilah unik.
  • job_type: Jenis pekerjaan, biasanya "STORED_PROCEDURE".
  • job_action: Nama prosedur tersimpan, pakej atau fail boleh laku yang akan dilaksanakan oleh kerja.
  • start_date: Masa mula kerja, yang boleh menjadi tarikh atau cap waktu. Jika tidak dinyatakan, ia lalai kepada masa semasa.
  • repeat_interval: Tentukan kekerapan pelaksanaan dan selang masa kerja. Dalam contoh ini, "FREQ=DAILY; BYHOUR=6;" bermaksud bahawa ia dilaksanakan setiap hari pada pukul 6 pagi. Pilihan lain termasuk setiap jam, mingguan, bulanan, tahunan, dsb. Kami juga boleh menggunakan parameter ini untuk menentukan hari di mana tugas itu harus dilaksanakan, seperti setiap hari Isnin, Selasa dan Khamis.
  • didayakan: Menunjukkan sama ada kerja didayakan.
  • komen: Penerangan ringkas tentang tugasan.

Ikat kerja dengan prosedur tersimpan

Dalam contoh di atas, kami mencipta kerja dan menetapkan prosedur tersimpan untuk pelaksanaannya. Sekarang, kita perlu mengikat kerja ini kepada prosedur tersimpan kami supaya ia melaksanakan operasi pada masa yang ditentukan. Kita boleh menggunakan fungsi DBMS_SCHEDULER.SET_ATTRIBUTE untuk menyelesaikan tugas ini.

BEGIN
  DBMS_SCHEDULER.SET_ATTRIBUTE (
          name => 'INSERT_TIME_JOB',
          attribute => 'program_action',
          value => 'INSERT_TIME;');
END;

Dalam contoh ini, kami menggunakan fungsi SET_ATTRIBUTE untuk menetapkan atribut "program_action" bagi tugas "INSERT_TIME_JOB" kepada "INSERT_TIME". Ini akan memberitahu DBMS_SCHEDULER untuk memanggil prosedur tersimpan INSERT_TIME pada masa tertentu.

Kami telah mempelajari cara menggunakan pakej DBMS_SCHEDULER untuk mencipta kerja berjadual dan mengikat tugas dalam prosedur tersimpan. Sekarang, kita boleh menunggu tugas yang dijadualkan untuk melaksanakan dan melihat rekod dalam jadual TIME_LOG.

Kesimpulan

Menggunakan fungsi tugas berjadual pangkalan data Oracle boleh membantu kami melaksanakan tugas pemprosesan latar belakang dengan mudah. Pakej DBMS_SCHEDULER menyediakan banyak pilihan untuk memenuhi keperluan aplikasi khusus kami, seperti pelaksanaan berulang, pelaksanaan selari, pemulihan kegagalan, dsb. Selain itu, ia mempunyai keupayaan untuk melaksanakan kerja merentas zon masa, tarikh, minggu, bulan, dsb. yang berbeza, yang menjadikan tugas berjadual sangat fleksibel. Dalam artikel ini, kami memberi tumpuan kepada cara menggunakan tugas berjadual Oracle untuk melaksanakan prosedur tersimpan dengan kerap. Kami berharap artikel ini dapat memberi anda panduan berguna dan membantu anda memahami dengan lebih baik penggunaan dan prinsip operasi tugas berjadual berdasarkan pangkalan data Oracle.

Atas ialah kandungan terperinci Bagaimana untuk melaksanakan prosedur tersimpan dalam Oracle dengan kerap. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Bagaimanakah saya menggunakan kursor dalam PL/SQL untuk memproses pelbagai baris data?Bagaimanakah saya menggunakan kursor dalam PL/SQL untuk memproses pelbagai baris data?Mar 13, 2025 pm 01:16 PM

Artikel ini menerangkan kursor PL/SQL untuk pemprosesan data berturut-turut. Ia memperincikan pengisytiharan kursor, pembukaan, pengambilan, dan penutupan, membandingkan kursor tersirat, eksplisit, dan ref. Teknik untuk pengendalian dataset besar yang cekap dan menggunakan gelung

Apakah segmen yang biasa digunakan dalam pangkalan data OracleApakah segmen yang biasa digunakan dalam pangkalan data OracleMar 04, 2025 pm 06:08 PM

Artikel ini mengkaji jenis segmen pangkalan data Oracle (data, indeks, pengembalian semula, sementara), implikasi prestasi mereka, dan pengurusan. Ia menekankan memilih jenis segmen yang sesuai berdasarkan beban kerja dan ciri -ciri data untuk kecekapan yang optimum

Apakah alat ujian prestasi untuk pangkalan data oracleApakah alat ujian prestasi untuk pangkalan data oracleMar 04, 2025 pm 06:11 PM

Artikel ini meneroka alat ujian prestasi pangkalan data Oracle. Ia membincangkan memilih alat yang betul berdasarkan belanjawan, kerumitan, dan ciri -ciri seperti pemantauan, diagnostik, simulasi beban kerja, dan pelaporan. Artikel ini juga memperincikan BO yang berkesan

Apakah alat klien pemasangan pangkalan data Oracle?Apakah alat klien pemasangan pangkalan data Oracle?Mar 04, 2025 pm 06:09 PM

Artikel ini meneroka alat klien pangkalan data Oracle, penting untuk berinteraksi dengan pangkalan data Oracle tanpa pemasangan pelayan penuh. Ia memperincikan alat yang biasa digunakan seperti sql*plus, pemaju sql, pengurus perusahaan, dan rman, menonjolkan keseronokan mereka

Apakah ruang meja lalai yang disediakan oleh pangkalan data Oracle?Apakah ruang meja lalai yang disediakan oleh pangkalan data Oracle?Mar 04, 2025 pm 06:10 PM

Artikel ini mengkaji ruang meja lalai Oracle (sistem, sysaux, pengguna), ciri -ciri mereka, kaedah pengenalan, dan implikasi prestasi. Ia berhujah menentang bergantung pada mungkir, menekankan pentingnya membuat tablespac berasingan

Bagaimana saya membuat pengguna dan peranan dalam oracle?Bagaimana saya membuat pengguna dan peranan dalam oracle?Mar 17, 2025 pm 06:41 PM

Artikel ini menerangkan cara membuat pengguna dan peranan dalam Oracle menggunakan arahan SQL, dan membincangkan amalan terbaik untuk menguruskan kebenaran pengguna, termasuk menggunakan peranan, mengikuti prinsip keistimewaan paling sedikit, dan audit biasa.

Cara memuat turun pangkalan data oracleCara memuat turun pangkalan data oracleMar 04, 2025 pm 06:07 PM

Artikel ini membimbing pengguna melalui memuat turun pangkalan data Oracle. Ia memperincikan proses, menekankan pemilihan edisi (Express, Standard, Enterprise), keserasian platform, dan penerimaan perjanjian lesen. Keperluan Sistem dan Edisi Suitabil

Bagaimanakah saya menggunakan pelekat data oracle dan subsetting untuk melindungi data sensitif?Bagaimanakah saya menggunakan pelekat data oracle dan subsetting untuk melindungi data sensitif?Mar 13, 2025 pm 01:19 PM

Butiran artikel ini Oracle Data Masking and Subsetting (DMS), penyelesaian untuk melindungi data sensitif. Ia meliputi mengenal pasti data sensitif, menentukan peraturan pelekat (shuffling, penggantian, rawak), menubuhkan pekerjaan, pemantauan, dan penyebaran

See all articles

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Alat panas

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

mPDF

mPDF

mPDF ialah perpustakaan PHP yang boleh menjana fail PDF daripada HTML yang dikodkan UTF-8. Pengarang asal, Ian Back, menulis mPDF untuk mengeluarkan fail PDF "dengan cepat" dari tapak webnya dan mengendalikan bahasa yang berbeza. Ia lebih perlahan dan menghasilkan fail yang lebih besar apabila menggunakan fon Unicode daripada skrip asal seperti HTML2FPDF, tetapi menyokong gaya CSS dsb. dan mempunyai banyak peningkatan. Menyokong hampir semua bahasa, termasuk RTL (Arab dan Ibrani) dan CJK (Cina, Jepun dan Korea). Menyokong elemen peringkat blok bersarang (seperti P, DIV),

SublimeText3 Linux versi baharu

SublimeText3 Linux versi baharu

SublimeText3 Linux versi terkini

MantisBT

MantisBT

Mantis ialah alat pengesan kecacatan berasaskan web yang mudah digunakan yang direka untuk membantu dalam pengesanan kecacatan produk. Ia memerlukan PHP, MySQL dan pelayan web. Lihat perkhidmatan demo dan pengehosan kami.

Penyesuai Pelayan SAP NetWeaver untuk Eclipse

Penyesuai Pelayan SAP NetWeaver untuk Eclipse

Integrasikan Eclipse dengan pelayan aplikasi SAP NetWeaver.