永发信息网

oracle解析语句后会放置到共享池中什么意思

答案:2  悬赏:0  手机版
解决时间 2021-03-06 13:29
  • 提问者网友:疯孩纸
  • 2021-03-06 02:19
oracle解析语句后会放置到共享池中什么意思
最佳答案
  • 五星知识达人网友:执傲
  • 2021-03-06 02:48
SQL共享的三个条件:
1,当前被执行的语句和共享池中的语句必须完全相同 (包括大小写、空格、换行等)
2,两个语句所指的对象必须完全相同 (同义词与表是不同的对象)
3,两个SQL语句中必须使用相同的名字的绑定变量(bind variables)

Oracle对两者采取的是一种严格匹配策略,要达成共享。SQL语句必须完全相同(包括空格、换行等)。能够使用共享的语句必须满足三个条件:

① 字符级的比较。当前被执行的语句和共享池中的语句必须完全相同。
例如: SELECt * FROM ATABLE;和下面每一个SQL语句都不同:
SELECt *from ATABLE
Select * From Atable;
② 语句所指对象必须完全相同。即两条SQL语句操作的数据库对象必须同一。
③语句中必须使用相同命名的绑定变量。如:第一组的两个SQL语句是相同的,可以共享;而第二组中两个语句不同,即使在运行时赋予不同的绑定变量以相同的值:
● 第一组 select pin,name from people where pin = :blk1.pin;
select pin,name from people where pin =:blk1.pin;
●第二组 select pin,name from people where pin =:blk1.ot_jnd;
select pin,name from people where pin = :blk1.ov_jnd;
全部回答
  • 1楼网友:污到你湿
  • 2021-03-06 04:27
我是来看评论的
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯