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

kembalikan satu baris dalam prosedur tersimpan di Oracle

Anda perlu memilih bidang tertentu untuk dimasukkan ke dalam hasil jika Anda akan menggunakannya seperti itu.

declare or replace procedure select_row 
(
    bookingid in integer,
    result out varchar2
) as 
begin
    select booking_name into result from booking where booking.id = bookingid;
end;

Jika tidak, Anda harus membuat tipe objek terlebih dahulu, dan memilih beberapa bidang ke dalam tipe objek dan mengembalikannya. Anda harus BUAT OBYEK atau BUAT REKAM.

CREATE OBJECT BOOKING_OBJ AS (
     bookingid INTEGER
    ,booking_name VARCHAR2(128)
);

declare or replace procedure select_row 
(
    bookingid in integer,
    result out BOOKING_OBJ
) as 
begin
    select booking_obj(bookingid, booking_name) into result from booking where booking.id = bookingid;
end;

Atau...

CREATE TYPE BOOKING_REC as record(
    bookingid integer,
    booking_name varchar2(100)
);

declare or replace procedure select_row 
(
    bookingid in integer,
    result out BOOKING_REC
) as 
begin
    select bookingid, booking_name into result from booking where booking.id = bookingid;
end;

Atau, Anda dapat mengembalikan kursor ref.




  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 membagi data yang ditanyakan dengan pembatas di Oracle?

  2. Mengikat parameter kueri berdasarkan nama dengan ODP.NET

  3. mengubah yyyy-mm-dd menjadi bb/hh/tttt

  4. Bagaimana menghubungkan ke database Oracle 11 dari . bersih

  5. Ekspresi tabel Oracle tentang pengumpulan dan pemesanan