sql >> Databasteknik >  >> RDS >> Oracle

hur gör man en funktion för att returnera radtyp från en tabell i pl/sql?

Oracle-inställningar :

CREATE TABLE account1 (
 account_id INT,
 name       VARCHAR2(20)
);

INSERT INTO account1 VALUES ( 1, 'Bob' );

CREATE OR REPLACE FUNCTION get_accounts(
  Acc_id IN Account1.account_id%TYPE
) RETURN account1%ROWTYPE
AS
  l_cust_record account1%ROWTYPE;
BEGIN
  SELECT *
  INTO   l_cust_record
  FROM   account1
  WHERE  account_id = Acc_id;

  RETURN l_cust_record;
END;
/

PL/SQL-block :

DECLARE
  r_acct ACCOUNT1%ROWTYPE;
BEGIN
  r_acct := get_accounts( 1 );
  DBMS_OUTPUT.PUT_LINE( r_acct.name );
END;
/

Utdata :

Bob


  1. Som skiftlägeskänslig i MySQL

  2. Populära Docker-bilder för MySQL och MariaDB Server

  3. Hur man skickar boolesk parameter till Oracle-proceduren C#

  4. C#:Oracle Data Type Equivalence med OracleDbType