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
Mysql vs. Oracle: Memahami Pelesenan dan KosMysql vs. Oracle: Memahami Pelesenan dan KosMay 03, 2025 am 12:19 AM

MySQL menggunakan lesen GPL dan komersil untuk projek sumber kecil dan terbuka; Oracle menggunakan lesen komersial untuk perusahaan yang memerlukan prestasi tinggi. Lesen GPL MySQL adalah percuma, dan lesen komersil memerlukan pembayaran; Yuran lesen Oracle dikira berdasarkan pemproses atau pengguna, dan kosnya agak tinggi.

Oracle: Dari pangkalan data ke perkhidmatan awanOracle: Dari pangkalan data ke perkhidmatan awanMay 02, 2025 am 12:05 AM

Evolusi Oracle dari pangkalan data ke perkhidmatan awan menunjukkan kekuatan teknikalnya yang kuat dan wawasan pasaran. 1. Oracle berasal dari tahun 1970 -an dan terkenal dengan sistem pengurusan pangkalan data relasi, dan telah melancarkan fungsi inovatif seperti PL/SQL. 2. Inti dari pangkalan data Oracle adalah model relasi dan pengoptimuman SQL, yang menyokong seni bina multi-penyewa. 3. Perkhidmatan Cloud Oracle menyediakan IaaS, PaaS dan SaaS melalui OCI, dan AutonomousDatabase berfungsi dengan baik. 4. Apabila menggunakan Oracle, anda perlu memberi perhatian kepada model pelesenan yang kompleks, pengoptimuman prestasi dan isu keselamatan data dalam penghijrahan awan.

Oracle dan MySQL: Meneroka Pendekatan Pengurusan DataOracle dan MySQL: Meneroka Pendekatan Pengurusan DataMay 01, 2025 am 12:13 AM

Oracle sesuai untuk aplikasi peringkat perusahaan yang memerlukan prestasi tinggi dan pertanyaan yang kompleks, dan MySQL sesuai untuk aplikasi web yang berkembang pesat dan digunakan. 1. Oracle menyokong pemprosesan transaksi kompleks dan ketersediaan yang tinggi, sesuai untuk sistem ERP kewangan dan besar. 2.MYSQL menekankan kemudahan penggunaan dan sokongan sumber terbuka, dan digunakan secara meluas dalam perusahaan kecil dan sederhana dan projek internet.

Mysql vs. Oracle: Lihat pengalaman penggunaMysql vs. Oracle: Lihat pengalaman penggunaApr 30, 2025 am 12:12 AM

Perbezaan pengalaman pengguna antara MySQL dan Oracle terutamanya dicerminkan dalam: 1. MySQL adalah mudah dan mudah digunakan, sesuai untuk akses cepat dan senario fleksibiliti yang tinggi; 2. Oracle mempunyai fungsi yang kuat, sesuai untuk senario yang memerlukan sokongan peringkat perusahaan. Sumber terbuka dan ciri percuma MySQL menarik pemula dan pemaju individu, sementara ciri dan alat kompleks Oracle memenuhi keperluan perusahaan besar.

Mysql dan Oracle: Meneroka Prestasi dan SkalaMysql dan Oracle: Meneroka Prestasi dan SkalaApr 29, 2025 am 12:12 AM

Perbezaan antara MySQL dan Oracle dalam Prestasi dan Skalabiliti adalah: 1. MySQL melakukan lebih baik pada set data kecil dan sederhana, sesuai untuk pembacaan dan penulisan yang cepat dan cekap; 2. Oracle mempunyai lebih banyak kelebihan dalam mengendalikan set data yang besar dan pertanyaan yang kompleks, sesuai untuk ketersediaan tinggi dan logik perniagaan yang kompleks. MySQL meluas melalui replikasi master-hamba dan teknologi sharding, sementara Oracle mencapai ketersediaan dan skalabilitas yang tinggi melalui RAC.

Perisian Oracle Apa: Fungsi dan Ciri UtamaPerisian Oracle Apa: Fungsi dan Ciri UtamaApr 28, 2025 am 12:08 AM

Ciri-ciri utama perisian Oracle termasuk seni bina multi-penyewa, analisis lanjutan dan perlombongan data, clustering aplikasi masa nyata (RAC), dan pengurusan dan pemantauan automatik. 1) Senibina multi-penyewa membolehkan pengurusan pelbagai pangkalan data bebas dalam satu contoh pangkalan data, memudahkan pengurusan dan mengurangkan kos. 2) Analitik lanjutan dan alat perlombongan data seperti Oracle Advanced Analytics dan OracLedataming Bantuan Extract Insights dari data. 3) Kluster Aplikasi Masa Nyata (RAC) menyediakan ketersediaan dan skalabiliti yang tinggi, meningkatkan toleransi dan prestasi kesalahan sistem. 4) Alat pengurusan dan pemantauan automatik seperti Oracle EnterpriseManager (OEM) untuk mengautomasikan tugas penyelenggaraan harian dan memantau nombor dalam masa nyata

Impak Oracle: Pengurusan Data dan seterusnyaImpak Oracle: Pengurusan Data dan seterusnyaApr 27, 2025 am 12:11 AM

Oracle mempunyai kesan mendalam dalam bidang pengurusan data dan aplikasi perusahaan. Pangkalan datanya terkenal dengan kebolehpercayaan, skalabilitas dan keselamatannya, dan digunakan secara meluas dalam industri seperti kewangan, penjagaan perubatan dan kerajaan. Pengaruh Oracle juga telah berkembang ke medan pengkomputeran middleware dan awan seperti WebLogicserver dan Oraclecloudinfrastructure (OCI), menyediakan penyelesaian inovatif. Walaupun persaingan dalam pangkalan data sumber terbuka dan pasaran pengkomputeran awan, Oracle mengekalkan kedudukan utama melalui inovasi berterusan.

Oracle: Meneroka Misi dan Nilai SyarikatOracle: Meneroka Misi dan Nilai SyarikatApr 26, 2025 am 12:06 AM

Misi Oracle adalah untuk "membantu orang melihat nilai data", dan nilai terasnya termasuk: 1) pelanggan pertama, 2) integriti, 3) inovasi, dan 4) kerja berpasukan. Nilai-nilai ini membimbing pengambilan keputusan strategik dan inovasi perniagaan Oracle di pasaran.

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

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

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.

VSCode Windows 64-bit Muat Turun

VSCode Windows 64-bit Muat Turun

Editor IDE percuma dan berkuasa yang dilancarkan oleh Microsoft

EditPlus versi Cina retak

EditPlus versi Cina retak

Saiz kecil, penyerlahan sintaks, tidak menyokong fungsi gesaan kod

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)