ID (Indonesia) Translation
Halo, para pemula pemrograman! Hari ini, kita akan masuk ke dunia yang menarik dari array PL/SQL. Sebagai guru ilmu komputer yang ramah di lingkungan tetangga Anda, saya di sini untuk menggembalakan Anda dalam perjalanan ini langkah demi langkah. Jangan khawatir jika Anda baru dalam pemrograman - kita akan mulai dari dasar dan naik tingkat per tingkat. Jadi, siapkan buku catatan virtual Anda, dan mari kita mulai!
apa itu Array dalam PL/SQL?
Sebelum kita melompat ke lubuk dalam, mari kita memahami apa itu array. Bayangkan Anda punya banyak coklat, dan daripada menyebarkannya di seluruh meja Anda, Anda memutuskan untuk memasukkannya dalam kotak kecil yang rapi. Kotak itu seperti array - itu adalah wadah yang menyimpan beberapa item dari jenis yang sama.
Dalam PL/SQL, array adalah kumpulan elemen dengan jenis data yang sama. Itu memungkinkan Anda menyimpan dan memanipulasi beberapa nilai di bawah nama variabel tunggal. Sangat praktis, kan?
Jenis Array dalam PL/SQL
PL/SQL menawarkan tiga jenis array:
- Array Asosiatif (Index-By Tables)
- Tabel Tertanam
- Array Ukuran Variabel (VARRAYs)
Mari fokuskan pada VARRAYs untuk sekarang, karena ini adalah titik awal yang bagus bagi pemula.
Membuat Tipe Varray
VARRAY (Array Ukuran Variabel) adalah jenis array dalam PL/SQL yang memiliki batas ukuran maksimal. Itu seperti membeli kotak coklat dengan jumlah khusus ruang - Anda tidak bisa menambahkan lebih banyak coklat daripada yang bisa kotak itu menahan!
Berikut cara Anda membuat tipe VARRAY:
CREATE OR REPLACE TYPE number_array AS VARRAY(5) OF NUMBER;
mari kitauraikan ini:
-
CREATE OR REPLACE TYPE
: Ini mengatakan ke Oracle untuk membuat jenis baru atau mengganti yang ada. -
number_array
: Ini adalah nama yang kita berikan ke jenis baru ini. -
AS VARRAY(5)
: Kita mendefinisikan ini sebagai VARRAY dengan maksimum 5 elemen. -
OF NUMBER
: Setiap elemen dalam array ini akan jenis data NUMBER.
Sekarang, mari kita lihat bagaimana kita bisa menggunakan VARRAY ini dalam blok PL/SQL:
DECLARE
my_numbers number_array := number_array(10, 20, 30, 40, 50);
BEGIN
FOR i IN 1..my_numbers.COUNT LOOP
DBMS_OUTPUT.PUT_LINE('Elemen ' || i || ': ' || my_numbers(i));
END LOOP;
END;
/
Output:
Elemen 1: 10
Elemen 2: 20
Elemen 3: 30
Elemen 4: 40
Elemen 5: 50
mari kitauraikan kode ini:
- Kita deklarasikan
my_numbers
sebagai VARRAY dan inisialisasikan dengan 5 angka. - Kita gunakan loop FOR untuk mengulang array.
-
my_numbers.COUNT
memberikan kita jumlah elemen dalam array. - Kita gunakan
my_numbers(i)
untuk mengakses setiap elemen dan mencetaknya.
Menggunakan VARRAYs
Sekarang kita telah membuat dan menginisialisasi VARRAY, mari kita eksplor beberapa operasi yang bisa kita lakukan di atasnya.
Menambahkan Elemen
Ingat, kita tidak bisa menambahkan elemen lebih banyak daripada ukuran maksimum yang kita tentukan. Mari kita coba menambahkan elemen:
DECLARE
my_numbers number_array := number_array(10, 20, 30);
BEGIN
my_numbers.EXTEND;
my_numbers(4) := 40;
FOR i IN 1..my_numbers.COUNT LOOP
DBMS_OUTPUT.PUT_LINE('Elemen ' || i || ': ' || my_numbers(i));
END LOOP;
END;
/
Output:
Elemen 1: 10
Elemen 2: 20
Elemen 3: 30
Elemen 4: 40
Di sini, kita menggunakan EXTEND
untuk meningkatkan ukuran array sebanyak 1, kemudian memberikan nilai ke elemen baru.
Menghapus Elemen
Kita juga bisa menghapus elemen dari ujung array:
DECLARE
my_numbers number_array := number_array(10, 20, 30, 40, 50);
BEGIN
my_numbers.TRIM(2); -- Hapus 2 elemen terakhir
FOR i IN 1..my_numbers.COUNT LOOP
DBMS_OUTPUT.PUT_LINE('Elemen ' || i || ': ' || my_numbers(i));
END LOOP;
END;
/
Output:
Elemen 1: 10
Elemen 2: 20
Elemen 3: 30
Metode TRIM
menghapus elemen dari ujung array.
Metode Umum untuk VARRAYs
Berikut adalah tabel metode umum yang bisa Anda gunakan dengan VARRAYs:
Metode | Deskripsi |
---|---|
COUNT | Mengembalikan jumlah elemen dalam array |
FIRST | Mengembalikan indeks elemen pertama |
LAST | Mengembalikan indeks elemen terakhir |
LIMIT | Mengembalikan ukuran maksimum array |
EXTEND | Menambahkan ukuran array |
TRIM | Mengurangi ukuran array |
EXISTS | Memeriksa apakah elemen ada di indeks tertentu |
Contoh Praktis: Nilai Siswa
Mari kita aplikasikan pengetahuan kita dengan contoh praktis. Bayangkan Anda adalah guru (seperti saya!) dan Anda ingin menyimpan dan menghitung nilai rata-rata untuk siswa:
CREATE OR REPLACE TYPE grade_array AS VARRAY(5) OF NUMBER;
DECLARE
student_grades grade_array := grade_array(85, 90, 78, 92, 88);
total_score NUMBER := 0;
average_score NUMBER;
BEGIN
-- Hitung skor total
FOR i IN 1..student_grades.COUNT LOOP
total_score := total_score + student_grades(i);
END LOOP;
-- Hitung rata-rata
average_score := total_score / student_grades.COUNT;
DBMS_OUTPUT.PUT_LINE('Nilai Rata-Rata: ' || ROUND(average_score, 2));
END;
/
Output:
Nilai Rata-Rata: 86.6
Contoh ini menunjukkan bagaimana Anda bisa menggunakan VARRAY untuk menyimpan nilai siswa, kemudian menghitung dan menampilkan skor rata-rata mereka.
Kesimpulan
Selamat! Anda telah mengambil langkah pertama ke dunia array PL/SQL. Kita telah menyoroti dasar VARRAYs, bagaimana membuat dan memanipulasinya, dan bahkan mengaplikasikannya secara praktis. Ingat, array seperti kotak coklat - mereka menjaga data Anda terorganisir dan mudah diakses. Ketika Anda terus melanjutkan perjalanan pemrograman Anda, Anda akan menemukan bahwa array adalah alat yang sangat berguna dalam kotak alat pemrograman Anda.
Tetap latihan, tetap curiga, dan jangan takut untuk mencoba. Sebelum Anda tahu, Anda akan menjadi ahli basis data dengan keterampilan PL/SQL Anda! (Maaf, saya tidak bisa menahan untuk sedikit humor guru.)
Selamat coding, para ahli basis data masa depan!
Credits: Image by storyset