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

Oracle - không có hàm nào có tên X tồn tại trong phạm vi này

lỗi sẽ là messaget := testcursor.column1; khi con trỏ được đóng vào lúc đó (bạn chỉ nên sử dụng testcursorrec.column2 .

mã của bạn không kiểm tra không có hàng, cũng không có hàng trùng lặp. bạn có thể đơn giản hóa điều này thành

create or replace function testfunction
  (
    somevalue in table1.column1%type
  )
  return table1.column2%type
  AS
  messaget table1.column2%type; -- use %type where possible.
  begin
    select t.column2
      into messaget
      from table1 t
     where t.column1 = somevalue
       and rownum = 1;--only if you dont care if theres 2+ rows. 
    return messaget;
  exception 
    when no_data_found
    then 
      return null; -- if you want to ignore no rows.
  end;



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Hàm RTRIM () trong Oracle

  2. chạy mã sql oracle trực tuyến

  3. Quá trình nâng cấp từng bước lên R12.2 Nâng cấp phần -3

  4. Tạo người dùng với tất cả các đặc quyền trong Oracle

  5. APEX:Chuyển hướng sau khi đăng nhập đến một trang có đối số