select HR架构上的pl sql错误

select HR架构上的pl sql错误,sql,oracle,plsql,Sql,Oracle,Plsql,我想做那样的事。。但是在一个函数中。。在oracle的人力资源架构中,从employee_id=&employee_id的employee中选择* Q:创建函数“SEARCH_EMPLOYEE”,该函数接收员工ID并通过输出参数返回其所有属性,输出参数的数据结构表示其所有信息 R: 我想我有个sintax的错误。。 我不知道有什么问题如果您正在学习如何创建返回表格整行的函数,那么下面是执行相同操作的基本示例: 表数据: 功能: 调用函数和结果: 您必须在实际编码中处理多个异常场景 干杯 在你的问

我想做那样的事。。但是在一个函数中。。在oracle的人力资源架构中,从employee_id=&employee_id的employee中选择*

Q:创建函数“SEARCH_EMPLOYEE”,该函数接收员工ID并通过输出参数返回其所有属性,输出参数的数据结构表示其所有信息

R:

我想我有个sintax的错误。。
我不知道有什么问题

如果您正在学习如何创建返回表格整行的函数,那么下面是执行相同操作的基本示例:

表数据:

功能:

调用函数和结果:

您必须在实际编码中处理多个异常场景


干杯

在你的问题中,请使用英语,不要使用其他语言。该人的详细信息是什么?这是某种UDT吗?人的细节只是一个词。。。我想从employees中选择*并返回employees\u id=&employeer\u id所在的行,但是,该过程不返回Nathing我想这样做。。但是在一个函数中。。从employee\u id=&employee\u id的employees中选择*为什么不显示实际错误?你为什么期望人们猜他们是什么?
Create or replace FUNCTION get_complete_employee (&in_employee_id IN NUMBER) 
    AS person_details;
    BEGIN 
    SELECT * --'Name-'||first_name||' '|| last_name
    into person_details
    FROM employees;   
   Dbms_output.put_line(person_details);
    -- END get_complete_employee;
    end;
SQL> select * from EMP;

    EMP_ID EMP_NAME             E
---------- -------------------- -
        10 John                 N
        20 May                  Y

SQL>
SQL> CREATE OR REPLACE FUNCTION GET_COMPLETE_EMPLOYEE (
  2      IN_EMPLOYEE_ID IN   NUMBER
  3  ) RETURN EMP%ROWTYPE AS
  4      MY_ROWTYPE   EMP%ROWTYPE;
  5  BEGIN
  6      SELECT
  7          * --'Name-'||first_name||' '|| last_name
  8      INTO MY_ROWTYPE
  9      FROM
 10          EMP
 11      WHERE
 12          EMP_ID = IN_EMPLOYEE_ID;
 13
 14      RETURN MY_ROWTYPE;
 15  END;
 16  /

Function created.

SQL>
SQL> SET SERVEROUT ON
SQL>
SQL> DECLARE
  2      EMPTYPE   EMP%ROWTYPE;
  3  BEGIN
  4      EMPTYPE := GET_COMPLETE_EMPLOYEE(10);
  5      DBMS_OUTPUT.PUT_LINE(EMPTYPE.EMP_NAME);
  6  END;
  7  /
John