Oracle
 sql >> Teknologi Basis Data >  >> RDS >> Oracle

Metode Pengumpulan:Fungsi BATAS Dalam Database Oracle

Tutorial PL/SQL hari ini adalah tentang Metode Koleksi LIMIT. Kita telah melihat 4 fungsi dalam rangkaian metode pengumpulan ini yaitu – Hitung, Ada, Pertama dan Terakhir. Limit adalah fungsi kelima yang akan kita pelajari hari ini.

Apakah LIMIT Metode Koleksi itu?

Metode pengumpulan LIMIT yang sebenarnya merupakan fungsi PL/SQL mengembalikan jumlah maksimum elemen yang dapat ditampung oleh VARRAY. Artinya dengan menggunakan fungsi ini Anda dapat mengetahui berapa banyak elemen yang dapat Anda simpan dalam sebuah VARRAY.

Apa yang dikembalikan oleh metode pengumpulan LIMIT?

Metode pengumpulan LIMIT mengembalikan nilai tipe PLS_INTEGER?

Apakah fungsi ini berfungsi dengan dua kumpulan Tabel Bersarang dan Array Asosiatif lainnya juga?

Metode pengumpulan LIMIT hanya berfungsi dengan VARRAY. Jika diterapkan ke tabel Bersarang atau array asosiatif maka fungsi ini akan mengembalikan nilai NULL atau Tidak. Jadi jawabannya adalah, Tidak, fungsi koleksi LIMIT tidak bekerja dengan tabel Bersarang dan Array Asosiatif.

Apa spesifikasi fungsi koleksi LIMIT?

Spesifikasi fungsi koleksi LIMIT adalah:

FUNCTION LIMIT RETURN pls_integer;

Apakah fungsi koleksi LIMIT memunculkan pengecualian? Jika ya, kapan?

Ya, fungsi LIMIT memunculkan pengecualian COLLECTION_IS_NULL jika diterapkan ke tabel bersarang yang tidak diinisialisasi atau VARRAY.

Dapatkah Anda menunjukkan kepada kami contoh cara menggunakan fungsi LIMIT?

Tentu saja mengapa tidak. Berikut adalah contoh yang sangat sederhana yang menunjukkan, cara menggunakan fungsi koleksi LIMIT dengan VARRAY dengan benar.

SET SERVEROUTPUT ON;
DECLARE
    TYPE inBlock_vry IS VARRAY (5) OF NUMBER;
    vry_obj inBlock_vry := inBlock_vry();
BEGIN
 --Let's find out total number of indexes in the above VARRAY
    DBMS_OUTPUT.PUT_LINE ('Total Indexes '||vry_obj.LIMIT);
END;
/

Bukankah kita memiliki fungsi COUNT yang memberikan informasi yang sama?

Fungsi pengumpulan LIMIT mengembalikan jumlah total indeks VARRAY terlepas dari apakah indeks ini kosong atau menyimpan beberapa data . Ia memeriksa definisi VARRAY dan melihat jumlah total elemen yang dirancang untuk disimpan dan mengembalikan nomor tersebut.

Sedangkan fungsi koleksi COUNT mengembalikan jumlah Indeks yang tidak kosong dan menyimpan beberapa data .

Lihatlah program PL/SQL ini. Ini akan membantu Anda memahami perbedaan antara metode pengumpulan COUNT dan LIMIT dengan lebih jelas.

SET SERVEROUTPUT ON;
DECLARE
    --Create VARRAY of 5 element
    TYPE inblock_vry IS
        VARRAY ( 5 ) OF NUMBER;
    vry_obj   inblock_vry := inblock_vry ();
BEGIN
    --Insert into VARRAY
    	vry_obj.extend;
    	vry_obj(1) := 10 * 2; 
dbms_output.put_line('Total Number of Index ' || vry_obj.limit);
dbms_output.put_line('Total Number of Index which are occupied ' || vry_obj.count);
END;
/

Dalam kode di atas kami memiliki VARRAY yang mampu menampung 5 elemen tipe data NOMOR. Di bagian eksekusi kami memiliki dua pernyataan keluaran DBMS. Pernyataan keluaran pertama yang menunjukkan hasil fungsi LIMIT akan mengembalikan 5 karena itulah kekuatan total VARRAY kami sedangkan pernyataan keluaran kedua akan mengembalikan 1 karena di antara 5 indeks itu hanya ada satu indeks yang menyimpan beberapa data di dalamnya.

Anda mengatakan dalam video bahwa Anda akan menunjukkan kepada kami cara mengetahui jumlah total elemen yang tidak digunakan agar kami dapat menyimpan data ke dalam varray menggunakan metode pengumpulan LIMIT?

Apakah begitu? Sudahkah saya mengatakan itu? Saya hanya bercanda.

Mencari tahu jumlah indeks kosong untuk Anda gunakan dalam VARRAY sangat mudah. Biarkan saya memberi tahu Anda caranya.

Seperti yang saya katakan di atas, fungsi koleksi COUNT mengembalikan jumlah indeks yang menyimpan data di dalamnya dan fungsi pengumpulan LIMIT mengembalikan jumlah total indeks yang dapat ditampung oleh VARRAY.

Jika Anda mengurangi hasil fungsi hitung dari hasil fungsi LIMIT, Anda akan mendapatkan jumlah total elemen yang tidak digunakan untuk menyimpan data ke dalam varray. Misalnya

DECLARE
    --Create VARRAY of 5 element
    TYPE inblock_vry IS
        VARRAY ( 5 ) OF NUMBER;
    vry_obj   inblock_vry := inblock_vry ();
BEGIN
    --Insert into VARRAY
    vry_obj.extend;
    vry_obj(1) := 10 * 2;
    dbms_output.put_line('Total Number of Index ' || vry_obj.limit);
    dbms_output.put_line('Total Number of Index which are occupied ' || vry_obj.count);
    dbms_output.put_line('Total Number of Vacant index left for use '
                            || (vry_obj.limit - vry_obj.count) );
END;
/

Itulah tutorial PL/SQL yang menjawab semua pertanyaan yang dapat Anda harapkan dalam ujian sertifikasi serta dalam Wawancara Anda tentang metode pengumpulan LIMIT di database Oracle.

Apakah ada sesuatu yang saya lupa untuk menutupi atau menyebutkan dalam tutorial ini? Jika ya, maka tolong izinkan saya. Tulis kepada saya di Twitter atau Facebook saya.

Terima kasih semoga harimu menyenangkan.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Bagaimana cara menggunakan tipe tabel dalam pernyataan SELECT FROM?

  2. Fungsi NVL2 di Oracle

  3. Kriteria Hibernasi untuk Tanggal

  4. BatchUpdateException:batch tidak akan dihentikan

  5. menambah nomor baris ketika nilai bidang berubah di Oracle