Dalam pangkalan data Oracle, menanyakan jadual sementara adalah keperluan yang kerap. Jadual sementara merujuk kepada jadual data sementara yang disimpan dalam pangkalan data, biasanya digunakan untuk menyimpan data sementara atau set hasil perantaraan. Berbanding dengan jadual data tradisional, kitaran hayat jadual sementara adalah lebih pendek dan biasanya hanya wujud dalam transaksi semasa atau sambungan semasa Sebaik sahaja transaksi atau sambungan tamat, jadual sementara tidak akan wujud lagi.
Dalam aplikasi praktikal, jadual sementara memainkan peranan penting dalam proses pemprosesan data. Sebagai contoh, kami mungkin perlu menyimpan data dalam jadual sementara untuk operasi pemprosesan data berikutnya, atau kami mungkin perlu meringkaskan data daripada berbilang jadual data untuk pengiraan Dalam kes ini, jadual sementara adalah alat yang sangat berguna.
Jadi, bagaimana untuk menanyakan jadual sementara dalam pangkalan data Oracle? Di bawah ini kami akan memperkenalkan dua kaedah.
Kaedah 1: Gunakan jadual sementara global
Jadual sementara global ialah mekanisme yang disediakan oleh pangkalan data Oracle untuk mencipta jadual sementara yang boleh dikongsi oleh berbilang sambungan serentak. Jadual sementara global boleh berkongsi data merentas berbilang sesi, menjadikannya cara yang sangat mudah untuk menanyakan jadual sementara.
Pertama, kita perlu mencipta jadual sementara global. Sintaks untuk mencipta jadual sementara global adalah seperti berikut:
CREATE GLOBAL TEMPORARY TABLE temp_table ( id NUMBER, name VARCHAR2(20) ) ON COMMIT PRESERVE ROWS;
Dalam sintaks di atas, temp_table
ialah nama jadual sementara global, id
dan name
ialah lajur dalam jadual, dan ON COMMIT PRESERVE ROWS
menunjukkan bahawa dalam transaksi Atau data dalam jadual tidak dikosongkan apabila sambungan tamat.
Seterusnya, kita boleh menggunakan pernyataan berikut untuk memasukkan data ke dalam jadual sementara global:
INSERT INTO temp_table VALUES (1, 'Tom'); INSERT INTO temp_table VALUES (2, 'Jerry');
Akhir sekali, kita boleh menggunakan pernyataan berikut untuk menanyakan data dalam jadual sementara global:
SELECT * FROM temp_table;
Kaedah 2: Gunakan jadual sementara biasa
Jadual sementara biasa ialah cara lain untuk melaksanakan jadual sementara dalam pangkalan data Oracle. Tidak seperti jadual sementara global, jadual sementara biasa hanya wujud dalam sesi semasa dan tidak boleh dikongsi oleh sesi lain. Walaupun kaedah ini lebih rumit sedikit daripada jadual sementara global, ia juga merupakan kaedah yang boleh dilaksanakan untuk menanyakan jadual sementara.
Pertama, kita perlu menggunakan pernyataan berikut untuk mencipta jadual sementara biasa dalam sesi semasa:
CREATE PRIVATE TEMPORARY TABLE temp_table ( id NUMBER, name VARCHAR2(20) );
Dalam sintaks di atas, temp_table
ialah nama jadual sementara , id
dan name
ialah lajur dalam jadual.
Kemudian, kita boleh menggunakan pernyataan berikut untuk memasukkan data ke dalam jadual sementara:
INSERT INTO temp_table VALUES (1, 'Tom'); INSERT INTO temp_table VALUES (2, 'Jerry');
Akhir sekali, kita boleh menggunakan pernyataan berikut untuk menanyakan data dalam jadual sementara:
SELECT * FROM temp_table;
Perlu diambil perhatian bahawa dalam pernyataan penciptaan jadual sementara biasa, kita perlu menggunakan kata kunci PRIVATE TEMPORARY
untuk menentukan bahawa jadual sementara biasa dicipta, bukan jadual sementara global.
Ringkasan
Menyoal jadual sementara ialah keperluan yang sangat biasa dalam pembangunan pangkalan data. Dalam pangkalan data Oracle, kita boleh menggunakan jadual sementara global atau jadual sementara biasa untuk mencapai keperluan ini. Jadual sementara global boleh dikongsi dengan berbilang sambungan serentak, yang agak mudah manakala jadual sementara biasa hanya wujud dalam sesi semasa dan perlu dibersihkan secara manual, yang agak menyusahkan. Apabila memilih kaedah pelaksanaan khusus, anda perlu membuat pilihan yang fleksibel berdasarkan keperluan sebenar dan senario perniagaan.
Atas ialah kandungan terperinci Bagaimana untuk menanyakan jadual sementara dalam pangkalan data Oracle. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!