Oracle v $session,v$mystat ให้ข้อผิดพลาด: ไม่มีตารางหรือมุมมองในการเลือก
ฉันมีคำสั่งเลือกนี้ในขั้นตอนภายในแพ็คเกจ
select distinct sid into a from v$mystat;
SELECT PADDR,TERMINAL,SID,SERIAL# INTO CURSES,CURTER,CURSID,CURSER from v$session where sid=a;
คำสั่งทั้งสองนี้ส่งกลับข้อผิดพลาด
PL / SQL: คำสั่ง SQL ถูกละเว้น PL / SQL: ORA-00942: ไม่มีตารางหรือมุมมอง
ข้อผิดพลาดนี้เกิดขึ้นภายในขั้นตอน แต่ฉันสามารถเรียกใช้คำสั่งเหล่านี้ทีละรายการจาก sqlplus หรือในแผ่นงาน sql ในผู้ใช้คนเดียวกัน
ฉันพยายามให้สิทธิ์โดยใช้คีย์เวิร์ดที่ให้สิทธิ์ แต่เกิดข้อผิดพลาดด้านล่าง คุณมีทางออกที่เป็นไปได้หรือไม่?

เวอร์ชัน Oracle: 12c Enterprise Edition รีลีส 12.2.0.1.0 - การผลิต 64 บิต
คำตอบ
คุณควรอนุญาตให้เลือกv_$session
ซึ่งเป็นวัตถุที่อยู่เบื้องหลังv$session
คำพ้องความหมาย
เช่นเดียวกับV_$MYSTAT
วัตถุสำหรับv$mystat
คำพ้องความหมาย
GRANT SELECT ON V_$MYSTAT TO <user> GRANT SELECT ON v_$session TO <user>