Cara Membuat Tabel Bersarang Di Dalam Blok PL/SQL
Selamat datang di tutorial kedua dari seri PL/SQL Collection. Dalam tutorial ini kita akan mempelajari tipe pertama dari Collection yaitu “Nested Table”. Tabel di dalam tabel adalah definisi paling sederhana yang dapat dibuat dan itu benar dalam segala hal karena tabel yang disematkan di dalam tabel lain persis seperti yang disarankan oleh nama tabel bersarang.
Tetapi, jika kita harus mendefinisikan koleksi 'Tabel bersarang' dengan cara yang lebih mewah dan teknis, maka kita dapat mengatakan bahwa Tabel bersarang adalah struktur satu dimensi yang sifatnya persisten dan tidak terbatas. Mereka dapat diakses dalam SQL serta PL/SQL dan dapat digunakan dalam tabel, catatan, dan definisi objek. Karena ini adalah koleksi PL/SQL yang tidak terbatas, maka ia dapat menampung sejumlah elemen dalam set yang dipesan secara acak.
Definisi
Tabel bertingkat adalah struktur satu dimensi yang sifatnya persisten dan tidak terbatas. Mereka dapat diakses dalam SQL serta PL/SQL dan dapat digunakan dalam tabel, catatan, dan definisi objek. Karena ini adalah koleksi PL/SQL yang tidak terbatas, maka ia dapat menampung sejumlah elemen dalam set yang tidak berurutan.
Bacaan yang disarankan:Pengantar Koleksi PL/SQL
Tabel bersarang dapat dibuat di dalam blok PL/SQL atau di database sebagai objek tipe koleksi (Objek Skema). Dalam kasus tabel bersarang sebelumnya berperilaku sebagai array satu dimensi tanpa jenis indeks atau batas atas apa pun.
Jadi untuk saat ini mari berkonsentrasi pada cara membuat Nested Table di dalam blok PL/SQL dan tinggalkan sisanya untuk tutorial selanjutnya.
Sintaks untuk Membuat Tabel Bersarang
DECLRE TYPE nested_table_name IS TABLE OF element_type [NOT NULL];
Saya telah menjelaskan sintaks ini secara rinci dalam tutorial video saya di saluran YouTube saya. Saya sangat menyarankan Anda untuk merujuk ke video itu.
Contoh:Bagaimana Cara Membuat Tabel Bersarang di dalam Blok PL/SQL?
Contoh berikut hanya untuk mendemonstrasikan cara membuat tabel bersarang, tidak ada yang mewah tentangnya.
SET SERVEROUTPUT ON; DECLARE TYPE my_nested_table IS TABLE OF number; var_nt my_nested_table := my_nested_table (9,18,27,36,45,54,63,72,81,90); BEGIN DBMS_OUTPUT.PUT_LINE ('Value Stored at index 1 in NT is ' ||var_nt (1)); DBMS_OUTPUT.PUT_LINE ('Value Stored at index 2 in NT is ' ||var_nt (2)); DBMS_OUTPUT.PUT_LINE ('Value Stored at index 3 in NT is ' ||var_nt (3)); END; /
Contoh di atas adalah contoh yang sangat sederhana di mana kita membuat tabel bersarang dan menamakannya 'my_nested_table' (nomor baris 3). Di baris berikutnya (baris nomor 4) kami membuat turunan dari koleksi yang sama dan menggunakannya untuk menginisialisasi tabel bersarang dan menyimpan beberapa data ke dalamnya. Di bagian eksekusi, kami mengakses data yang disimpan satu per satu menggunakan nomor indeks, cara yang sama seperti yang biasa kami lakukan dalam array.
Alih-alih mengakses data satu per satu secara manual menggunakan indeks, kita dapat menggunakan loop dan siklus melalui setiap elemen dari kumpulan tabel bersarang.
SET SERVEROUTPUT ON; DECLARE TYPE my_nested_table IS TABLE OF number; var_nt my_nested_table := my_nested_table (9,18,27,36,45,54,63,72,81,90); BEGIN FOR i IN 1..var_nt.COUNT LOOP DBMS_OUTPUT.PUT_LINE ('Value stored at index '||i||'is '||var_nt(i)); END LOOP; END; /
Itu adalah contoh lain cara membuat tabel bersarang di mana kita menggilir data dan menampilkannya kembali ke pengguna menggunakan For Loop.
Itu saja tentang cara membuat tabel bersarang di blok PL/SQL. Nantikan terus karena dalam tutorial berikutnya kita akan mempelajari cara membuat tabel bersarang sebagai objek koleksi database dan semua tampilan kamus data apa yang dapat Anda gunakan untuk mendapatkan informasi tabel bersarang yang disimpan dalam database Anda.
Itu saja. Terima kasih telah membaca &semoga harimu menyenangkan!