PLSQL 中的标识符无效

Invalid identifier in PLSQL

我想根据employee-id打印员工信息。但是当我编译代码时出现这个错误

这是我的代码
CREATE OR REPLACE PROCEDURE EmployeeInfo(empid  number)
IS
    fname varchar(20);
    lname varchar(40);
    empemail   number(10);
    ephone VARCHAR(10);
    title varchar(20);
BEGIN 
    SELECT first_name,last_name,email,phone,job_title
    INTO fname,lname,empemail,ephone,title
    FROM employees
    WHERE employee_id=empid;
    DBMS_OUTPUT.PUT_LINE( 'First Name: '||first_name );
    DBMS_OUTPUT.PUT_LINE( 'Last Name: '||last_name );
    DBMS_OUTPUT.PUT_LINE( 'Email: '||email );
    DBMS_OUTPUT.PUT_LINE( 'Phone: '||phone );
    DBMS_OUTPUT.PUT_LINE( 'job_title: '||job_title );
END; 
/

EXECUTE employeeinfo(107);

您应该显示局部变量的值,而不是 table 列。

CREATE OR REPLACE PROCEDURE EmployeeInfo(empid  number)
IS
fname varchar(20);
lname varchar(40);
empemail   number(10);
ephone VARCHAR(10);
title varchar(20);
BEGIN 
     SELECT first_name,last_name,email,phone,job_title
     INTO fname,lname,empemail,ephone,title
     FROM employees
     WHERE employee_id=empid;
     DBMS_OUTPUT.PUT_LINE( 'First Name: '||fname);
     DBMS_OUTPUT.PUT_LINE( 'Last Name: '||lname);
     DBMS_OUTPUT.PUT_LINE( 'Email: '||empemail);
     DBMS_OUTPUT.PUT_LINE( 'Phone: '||ephone );
     DBMS_OUTPUT.PUT_LINE( 'job_title: '||title);
END; 
/