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

Jenis Tabel di Oracle PL SQL Contoh

Jenis tabel PL SQL sebenarnya adalah kumpulan, seperti array. Dengan bantuan koleksi PL SQL, Anda dapat memproses data massal secara efisien. Dalam posting ini, saya akan mengajarkan Anda perintah yang sangat mendasar dan paling sering digunakan untuk kumpulan tipe tabel PL SQL. Di bawah ini adalah jenis tabel dalam contoh Oracle PL SQL.

Pertama, Anda perlu mendeklarasikannya di bagian deklarasi blok PL SQL. Berikut sintaks dengan contoh:

Tipe Tabel di Contoh Oracle PL SQL

1. Deklarasikan Jenis Tabel PL SQL

Type any_table_type is table of emp%rowtype index by binary_integer;
emp_rec any_table_type;

Perintah di atas akan mendeklarasikan tipe tabel any_table_type dari tipe baris tabel emp dan kemudian menginisialisasi dengan emp_rec. Setelah deklarasi, Anda dapat menetapkan nilainya secara manual. Di bawah ini contohnya:

2. Tetapkan Nilai Untuk Jenis Tabel PL SQL

set serveroutput on;
declare
Type any_table_type is table of emp%rowtype 
    index by binary_integer;
emp_rec any_table_type;
begin
emp_rec(1).ename := 'abc'; /* assigning values */
emp_rec(2).ename := 'xyz';
dbms_output.put_line(emp_rec(1).ename); /* accessing values */
dbms_output.put_line(emp_rec(2).ename);
end;

Karena tabel PL SQL adalah seperti array, maka nilainya harus ditetapkan dengan memberikan nomor elemen array, seperti yang ditunjukkan di atas. Sekarang di bawah ini adalah contoh cara Menghapus dari kumpulan jenis tabel PL SQL.

3. Menghapus Elemen Dari Jenis Tabel PL SQL

set serveroutput on;
declare
Type any_table_type is table of emp%rowtype index by binary_integer;
emp_rec any_table_type;
begin
emp_rec(1).ename := 'abc';
emp_rec(2).ename := 'xyz';
emp_rec.delete(1); /* will delete first element */
for i in emp_rec.first .. emp_rec.last loop /* loop through the array */
dbms_output.put_line(emp_rec(i).ename);
end loop;
end;

Contoh di atas akan menghapus elemen pertama dan hanya akan mencetak elemen kedua. Ketika Anda akan mengeksekusi blok di atas, outputnya adalah:

xyz
prosedur PL/SQL berhasil diselesaikan.

Untuk menghapus semua elemen dari tipe tabel PL SQL, di bawah ini adalah contohnya:

emp_rec.delete;

4. Mengisi Jenis Tabel SQL PL Menggunakan Kumpulkan Massal

Di bawah ini adalah jenis tabel dalam contoh oracle PL SQL untuk mengambil data dari tabel emp dan kemudian akan mengisi jenis tabel PL SQL menggunakan Bulk Collect dan kemudian akan memperbarui tabel emp menggunakan FORALL. Ini contohnya:

set serveroutput on;

DECLARE
   CURSOR c
   IS
      SELECT * FROM emp;

   TYPE any_table_type IS TABLE OF emp%ROWTYPE
                             INDEX BY BINARY_INTEGER;

   emp_rec   any_table_type;
BEGIN
   OPEN c;

   FETCH c
   BULK COLLECT INTO emp_rec;

   CLOSE c;

   FORALL i IN emp_rec.FIRST .. emp_rec.LAST
      UPDATE emp
         SET comm = emp_rec (i).sal * 10 / 100
       WHERE empno = emp_rec (i).empno;

   COMMIT;
END;

Anda juga dapat memeriksa Alat Prosedur SQL PL saya untuk menghasilkan skrip untuk pengembangan Anda.

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. ORA-30926:tidak bisa mendapatkan set baris yang stabil di tabel sumber saat Menggabungkan tabel

  2. Memformat DATE di Oracle

  3. Bagaimana cara memanggil fungsi Oracle dari Hibernate dengan parameter pengembalian?

  4. ORA - 00933 kebingungan dengan gabungan dalam dan as

  5. Cara Membuat Laporan PDF Menggunakan PL/SQL