如果我有临时表(10个字段)并使用存储过程(单列的单个更新语句)更新它。
是否需要提交以更新临时表?没有提交的事情可以正常工作吗?
答案 0 :(得分:3)
如果它是真实的temporary table,其中的数据只会在您的会话中可见,即使您提交,也不会向其他任何人提交。如果on commit
条款为preserve rows
,那么即使对您来说提交也没有任何区别,但如果它是delete rows
那么您commit
之后就会丢失数据,即使在您的会话中也是如此
如果它不是真正的临时表,则其中的数据将仅对您的会话可见,直到您提交。无论什么叫做你的程序(通常)会在同一个会话中,所以会看到数据发生变化,通常调用者会决定是提交还是回滚 - 在程序中执行此操作通常不是一个好主意。
答案 1 :(得分:-1)
这样说 - 如果你没有提交 - 只有你的会话在任何时间点看到。