Sejauh ini kita telah melihat cara membuat variabel tipe data record berbasis Tabel dan kursor. Yang tersisa adalah pengguna yang menentukan tipe data record yang akan kita bahas dalam tutorial hari ini.
Seperti namanya, catatan yang ditentukan pengguna adalah variabel catatan yang strukturnya ditentukan oleh pengguna, yang tidak seperti catatan berbasis tabel atau kursor yang strukturnya berasal dari tabel atau kursor masing-masing. Ini berarti bahwa dengan catatan yang ditentukan pengguna, Anda dapat memiliki kontrol penuh atas struktur variabel catatan Anda.
Proses pembuatan variabel record user define dibagi menjadi dua bagian. Sebelum mendefinisikan record, pertama-tama kita perlu mendefinisikan TYPE untuk variabel record. TYPE ini akan menjadi dasar dari variabel User Define Record dan akan membantu dalam mendorong strukturnya. Setelah TYPE berhasil dideklarasikan, maka kita dapat menggunakannya untuk membuat variabel record yang ditentukan pengguna.
Sintaks Catatan yang Ditentukan Pengguna di Database Oracle
Di bawah ini adalah sintaks untuk membuat TYPE untuk Variabel Tipe Data Rekam Buatan Pengguna.
TYPE type_name IS RECORD ( field_name1 datatype 1, field_name2 datatype 2, ... field_nameN datatype N );
Setelah TYPE kami dinyatakan, kami siap untuk membuat Variabel Rekam kami. Variabel ini kemudian akan memperoleh semua properti dari tipe yang digunakan untuk membuatnya. Dan berikut ini adalah sintaks untuk membuat variabel tipe data yang ditentukan pengguna.
record_name TYPE_NAME;
Apakah Anda memperhatikan bahwa tidak seperti Variabel Rekaman Berbasis Tabel atau Berbasis Kursor, kami tidak harus menggunakan atribut %ROWTYPE di sini untuk mendeklarasikan variabel rekaman?
Anda dapat menonton Video Tutorial di saluran YouTube saya untuk penjelasan mendetail tentang sintaks di atas.
Contoh:Cara Membuat Variabel Tipe Data Rekam Buatan Pengguna.
Langkah 1:Deklarasikan Jenis untuk Variabel Rekaman Buatan Pengguna
SET SERVEROUTPUT ON; DECLARE TYPE rv_dept IS RECORD( f_name VARCHAR2(20), d_name DEPARTMENTS.department_name%TYPE );
Langkah 2:Deklarasikan Variabel Rekam Buatan Pengguna
Setelah membuat TYPE, Anda siap untuk membuat Variabel Rekaman Buatan Pengguna Anda.
var1 rv_dept;
Pernyataan PL/SQL di atas akan membuat variabel record dengan nama VAR1.
Langkah 3:Inisialisasi Variabel Rekaman Buatan Pengguna.
Variabel record yang ditentukan pengguna dapat diinisialisasi dengan berbagai cara. Misalnya Anda dapat menginisialisasi variabel record secara langsung dengan menetapkan nilai menggunakan variabel penugasan atau Anda dapat mengambil nilai yang disimpan ke dalam kolom tabel menggunakan pernyataan SELECT-INTO. Jadi mari kita lanjutkan dengan contoh kita dan pelajari cara menginisialisasi variabel record yang ditentukan pengguna menggunakan pernyataan SELECT-INTO.
Selanjutnya saya akan menulis bagian eksekusi. Di bagian eksekusi kita akan memiliki pernyataan SELECT yang akan menggabungkan tabel karyawan dan tabel departemen dan mengembalikan nama depan dan nama departemen dari karyawan tertentu.
BEGIN SELECT first_name , department_name INTO var1.f_name, var1.d_name FROM employees join departments Using (department_id) WHERE employee_id = 100; DBMS_OUTPUT.PUT_LINE(var1.f_name||' '||var1.d_name); END;
Pernyataan pilih yang kita miliki di sini akan mengembalikan nama depan dan nama departemen karyawan yang id karyawannya adalah 100. Data untuk kedua kolom berasal dari tabel yang berbeda sehingga kami menggunakan JOIN di sini. Karena ada dua tabel berbeda yang terlibat dalam kueri, maka dalam situasi seperti itu, penggunaan Variabel Rekaman Berbasis Tabel tidak dimungkinkan, oleh karena itu solusi yang layak adalah variabel rekaman yang ditentukan pengguna.
Mari gabungkan semua potongan kode di atas menjadi satu blok PL/SQL anonim.
SET SERVEROUTPUT ON; DECLARE TYPE rv_dept IS RECORD( f_name VARCHAR2(20), d_name departments.department_name%type ); var1 rv_dept; BEGIN SELECT first_name , department_name INTO var1.f_name, var1.d_name FROM employees join departments Using (department_id) WHERE employee_id = 100; DBMS_OUTPUT.PUT_LINE(var1.f_name||' '||var1.d_name); END; /
Itulah cara kami membuat Variabel Tipe Data Rekam Buatan Pengguna di Oracle Database. Semoga Anda menikmati membaca dan belajar sesuatu yang baru. Saya juga memberikan merchandise RebellionRider kepada satu pemenang yang dipilih secara acak setiap bulan, jadi pastikan untuk membagikan blog ini dengan teman-teman Anda di media sosial Anda.
Itu saja, terima kasih &semoga harimu menyenangkan!