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

Prosedur tersimpan Oracle menerima parameter array(tabel) dalam contoh paket yang diperlukan

Anda memerlukan objek SQL untuk memanggil TABLE operator dari SELECT . Berikut adalah contoh kecil (9iR2):

SQL> CREATE TYPE table_number is TABLE OF NUMBER;
  2  /

Type created.

SQL> SELECT * FROM TABLE(table_number(1,2,3));

COLUMN_VALUE
------------
           1
           2
           3

Anda dapat menggunakan fungsi di sini sebagai gantinya (perhatikan bahwa TYPE saya masih didefinisikan di luar paket):

SQL> CREATE OR REPLACE PACKAGE pkg AS
  2     FUNCTION f RETURN table_number;
  3  END;
  4  /

Package created.

SQL> CREATE OR REPLACE PACKAGE BODY pkg AS
  2     FUNCTION f RETURN table_number IS
  3     BEGIN
  4        RETURN table_number(4,5,6);
  5     END;
  6  END;
  7  /

Package body created.

SQL> SELECT * FROM table(pkg.f);

COLUMN_VALUE
------------
           4
           5
           6



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Hasil konversi tanggal SQL ke parameter model format angka tidak valid.

  2. Setel variabel lingkungan ORACLE_HOME dan PATH yang berbeda menggunakan Ansible

  3. Cara Memformat Angka sebagai Mata Uang di Oracle

  4. Oracle Trigger untuk memperbarui tabel yang sama

  5. Cara tercepat untuk mengidentifikasi perbedaan antara dua tabel?