pl/sql 显示 table 的所有列

pl/sql displaying all columns of a table

employee table schema

employee(id, name, company, salary);

创建了显示所有列值的过程

create or replace procedure p1
IS
BEGIN
  select * from employee;
END;
/

exe p1;

但是,这并没有显示数据。

您的 PL/SQL 区块无效,甚至不会 运行。您需要 return 将数据返回给客户端,或者如果您正在使用 SQL*Plus,请使用 dbms_output.put_line 打印查询结果集。

create or replace procedure p1
IS
BEGIN
  DBMS_OUTPUT.ENABLE;
  FOR emp_rec in select * from employee LOOP
     dbms_output.put_line('EMployee id: || emp_rec.emp_id || ' Name: ' || emp_rec ename);
  END LOOP
END;
/

适当更改列名称