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

PL/SQL:bagaimana cara meminta input pengguna dalam suatu prosedur?

PL/SQL adalah bahasa untuk menulis program otonom. Ini tidak dirancang untuk interaktivitas pengguna. Nilai input dilewatkan sebagai parameter. Jadi program Anda akan terlihat seperti ini

CREATE OR REPLACE PROCEDURE hello
    ( p1 in number
    , p2 in varchar2 )
AS
    l_salutation varchar2(20) := 'Hello World';
BEGIN
    DBMS_OUTPUT.PUT_LINE(l_salutation);
    DBMS_OUTPUT.PUT_LINE('p1 = ' || p1);
    DBMS_OUTPUT.PUT_LINE('p2 = ' || p2);
END;
/

Perhatikan tidak perlu DECLARE dengan Prosedur bernama. Bagian antara AS dan BEGIN adalah untuk mendeklarasikan variabel, seperti yang telah saya lakukan dengan l_salutation .

Anda dapat memberikan nilai untuk parameter tersebut saat menjalankan program. Di SQL*Plus ini akan berfungsi seperti ini:

SET SERVEROUTPUT ON

accept p1 prompt "please enter 1 or 0: "
accept p2 prompt "please enter Y or N: "

exec HELLO (&p1, '&p2')


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. R12.2 Laporan Kesiapan Menambal Online

  2. Stempel Waktu Hibernasi dengan Zona Waktu

  3. Bagaimana cara Membungkus Kode SQL PL di Oracle?

  4. Menyalin baris dalam tabel yang sama tanpa harus mengetikkan 50+ nama kolom (sambil mengubah 2 kolom)

  5. Bagaimana Anda bisa menjalankan kueri yang sama beberapa kali menggunakan loop di PL/SQL?