我已经读过会话表中的数据在提交过程中存活。用文字Ask Tom。Oracle会话临时表中的数据何时会被删除?
ON COMMIT PRESERVE ROWS使这个会话基于临时 表。行将保留在此表中,直到注销。只有我能看到,虽然他们 ,没有其他的会议永远不会看到“我”行即使我 提交
问题句话我在这里是“直到注销”。以一个Web应用程序为例,它保持与DB的单一连接。因此,这意味着所有登录到Web应用程序的用户都将共享相同的数据库会话。那么,这是否意味着所有用户都将在该临时表中看到相同的内容?
在实际的Web应用程序中,我们通常会维护多个数据库连接。这些连接被维护在一个“池”中,并且它们被许多用户重用。在这种情况下,行为可能会非常不稳定,用户可能会查看上次用户填充的数据。
+1实际上,OP的问题中的文章明确提到临时表“可能基于SESSION(数据存在提交而不是断开/重新连接),它们可能是基于TRANSACTION的(数据在提交后消失)”。 –
好的,所以我想这意味着我的结论是正确的。 – AppleGrew