Tôi không chắc rằng tôi hiểu ý của bạn về "quyền sở hữu".
Nếu Người dùng B sở hữu một thủ tục được lưu trữ, Người dùng B có thể cấp cho Người dùng A quyền để chạy thủ tục đã lưu trữ
GRANT EXECUTE ON b.procedure_name TO a
Người dùng A sau đó sẽ gọi thủ tục bằng tên đủ điều kiện, tức là
BEGIN
b.procedure_name( <<list of parameters>> );
END;
Ngoài ra, Người dùng A có thể tạo một từ đồng nghĩa để tránh phải sử dụng tên thủ tục đủ điều kiện.
CREATE SYNONYM procedure_name FOR b.procedure_name;
BEGIN
procedure_name( <<list of parameters>> );
END;