Oracle
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Oracle

PLS-00302:thành phần phải được khai báo- Không thể giải quyết

Hãy thử:

begin
  for emp_complex_rec in (select e.fname,
                                 d.dlocation
                            from employee e
                            INNER JOIN dept_location d
                              ON (e.dno = d.dnumber))
  loop
    dbms_output.put_line('The employee id is: ' ||
                         emp_complex_rec.rname ||
                         ' and the employee''s location is ' ||
                         emp_complex_rec.rlocation);
  end loop;
end;

Vấn đề với mã gốc là định nghĩa của emp_complex_rec như một loại xung đột với định nghĩa của emp_complex_rec như một biến vòng lặp con trỏ. Định nghĩa con trỏ rõ ràng cũng không cần thiết - IMO đặt SELECT trong FOR vòng lặp dễ dàng hơn và rõ ràng hơn.

Chia sẻ và tận hưởng.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Oracle:Bảng phân vùng theo tháng

  2. SQL:Chèn hàng cho (các) tháng bị thiếu

  3. Nhập từ kiểm tra xác thực cơ sở dữ liệu oracle

  4. Sự khác biệt giữa các lớp trình điều khiển Oracle jdbc?

  5. Khả năng hiển thị khác biệt trong tham gia truy vấn con và vị trí