ORACLE中select * from v$sqlarea这个语句的问题

来源:百度知道 编辑:UC知道 时间:2024/06/17 15:31:15
我想知道select * from v$sqlarea执行下来的结果是:
DELETE FROM ORA.BASE_STOCK WHERE ROWID = :OLD_ROWID
这个后台跟的参数:OLD_ROWID 这个参数是什么意思?我写的SQL是:
delete from base_stock
这是怎么回事!请大虾帮忙解决一下

v$sqlarea中系统对你写的sql标准化后的结果,
oracle对每个元组都有一个隐藏列rowid指向了其真实的物理地址的索引
:old_rowid 这个是变量绑定,就在执行是系统自动用实际值来替换这个标记。关于变量绑定一可以搜索一下,网上有很多文章就不详细叙述了