


Bagaimana untuk Melakukan Operasi Upsert dalam Oracle Menggunakan MERGE?
Oracle Upsert: Mengemas kini atau Memasukkan Data dengan Cekap
Masalah:
Bagaimana anda boleh melakukan operasi upsert dalam Oracle—mengemas kini rekod jika wujud atau memasukkan yang baharu jika tiada?
Penyelesaian: MERGE
Kenyataan
Oracle tidak mempunyai perintah UPSERT khusus. Pernyataan MERGE
menyediakan fungsi ini. Ia menggabungkan operasi kemas kini dan sisipan dengan cekap berdasarkan syarat gabungan.
Contoh Ilustrasi
Contoh ini mempamerkan upsert menggunakan pernyataan MERGE
dalam prosedur tersimpan:
CREATE OR REPLACE PROCEDURE upsert_data (p_id NUMBER, p_value NUMBER) AS BEGIN MERGE INTO my_table target USING dual source ON (target.id = p_id) WHEN MATCHED THEN UPDATE SET target.value = p_value WHEN NOT MATCHED THEN INSERT (id, value) VALUES (p_id, p_value); END; / -- Sample usage and verification CREATE TABLE my_table (id NUMBER PRIMARY KEY, value NUMBER); BEGIN upsert_data(1, 10); upsert_data(1, 20); -- Update existing row upsert_data(2, 30); -- Insert new row END; / SELECT * FROM my_table;
Prosedur ini, upsert_data
, mengambil ID dan nilai. Penyataan MERGE
membandingkan p_id
yang disediakan dengan ID sedia ada dalam my_table
.
-
WHEN MATCHED
: Jika padanan ditemui, lajurvalue
dikemas kini kepadap_value
. -
WHEN NOT MATCHED
: Jika tiada padanan ditemui, baris baharu dimasukkan denganp_id
danp_value
yang diberikan.
Pernyataan akhir SELECT
menunjukkan hasil kemas kini gabungan dan sisipan. Pendekatan ini cekap dan mengelakkan keperluan untuk pernyataan UPDATE
dan INSERT
berasingan dengan semakan bersyarat.
Atas ialah kandungan terperinci Bagaimana untuk Melakukan Operasi Upsert dalam Oracle Menggunakan MERGE?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Kurangkan penggunaan memori MySQL di Docker

Bagaimana anda mengubah jadual di MySQL menggunakan pernyataan Alter Table?

Cara menyelesaikan masalah MySQL tidak dapat membuka perpustakaan bersama

Jalankan MySQL di Linux (dengan/tanpa bekas podman dengan phpmyadmin)

Apa itu SQLite? Gambaran Keseluruhan Komprehensif

Menjalankan Pelbagai Versi MySQL di MacOS: Panduan Langkah demi Langkah

Apakah beberapa alat GUI MySQL yang popular (mis., MySQL Workbench, phpmyadmin)?

Bagaimana saya mengkonfigurasi penyulitan SSL/TLS untuk sambungan MySQL?
