Bisakah kita menggunakan eksekusi langsung untuk pernyataan pilih?
Bisakah kita menggunakan eksekusi langsung untuk pernyataan pilih?

Video: Bisakah kita menggunakan eksekusi langsung untuk pernyataan pilih?

Video: Bisakah kita menggunakan eksekusi langsung untuk pernyataan pilih?
Video: Saat Putin Ingatkan Jokowi Soal Rusia Punya Jasa Besar untuk Kemerdekaan Indonesia 2024, April
Anonim

Program dapat menggunakan EXECUTE IMMEDIATE . LAKUKAN SEGERA mendefinisikan Pilih loop untuk memproses baris yang dikembalikan. jika Pilih mengembalikan hanya satu baris, tidak perlu menggunakan A Pilih lingkaran.

Darinya, bagaimana Menggunakan langsung mengeksekusi?

Anda dapat menempatkan LAKUKAN SEGERA pernyataan dengan RETURNING BULK COLLECT INTO di dalam pernyataan FORALL. Anda dapat menyimpan hasil dari semua pernyataan INSERT, UPDATE, atau DELETE dalam satu set koleksi. Anda dapat meneruskan elemen koleksi berlangganan ke LAKUKAN SEGERA pernyataan melalui MENGGUNAKAN ayat.

Selanjutnya, pertanyaannya adalah, apakah kita perlu komit setelah segera dieksekusi? Melakukan tidak diperlukan setelah setiap LAKUKAN SEGERA . Pernyataan tertentu melakukan BUKAN memerlukan A melakukan ; misalnya jika Anda memotong tabel dengan TRUNCATE. Semua pekerjaan yang tidak terikat dalam transaksi saat ini berkomitmen atau digulung kembali - bukan hanya pernyataan dieksekusi oleh LAKUKAN SEGERA.

Dengan cara ini, dapatkah kita menggunakan eksekusi langsung di fungsi Oracle?

NS LAKUKAN SEGERA pernyataan mengeksekusi pernyataan SQL dinamis atau anonim PL/SQL memblokir. Anda dapat gunakan untuk mengeluarkan pernyataan SQL yang tidak dapat direpresentasikan secara langsung di PL/SQL , atau untuk membangun pernyataan di mana kamu lakukan tidak tahu semua nama tabel, klausa WHERE, dan sebagainya terlebih dahulu.

Mengapa kami menggunakan eksekusi langsung di Oracle?

LAKUKAN SEGERA memungkinkan eksekusi dari pernyataan DML atau DDL yang disimpan sebagai string dan hanya dievaluasi saat runtime. Hal ini memungkinkan seseorang untuk secara dinamis membuat pernyataan berdasarkan logika program. LAKUKAN SEGERA juga satu-satunya cara Anda bisa menjalankan DDL dalam PL/SQL memblokir.

Direkomendasikan: