gpt4 book ai didi

oracle - 检查临时表是否存在

转载 作者:行者123 更新时间:2023-12-05 09:24:52 33 4
gpt4 key购买 nike

如何检查 Oracle 临时表是否存在?当我知道它存在时查询 ALL_TABLES 或 USER_TABLES 时我没有看到该表。

此外,为了确保我理解临时表,如果使用 ON COMMIT DELETE ROWS 创建,该表将一直存在,但数据会在 session 结束时删除? session 是指连接何时关闭?

最佳答案

如果您拥有临时表,它将在 USER_TABLES 中列出;如果您对该表具有权限,则将在 ALL_TABLES 中列出。如果它存在于数据库中,它将列在 DBA_TABLES 中,但您可能没有查询 DBA_TABLES 的权限。如果表存在于数据库中但不在 ALL_TABLES 中,则意味着当前用户没有临时表的权限。

是的,临时表将永远存在(当然,一旦创建)。当您指定 ON COMMIT DELETE ROWS 时,临时表中的数据将在事务完成(提交或回滚)时删除。每个 session 将始终只看到它插入到表中的数据,但是当您指定 ON COMMIT DELETE ROWS 时,您进一步限制了数据存在于当前事务的时间。

关于oracle - 检查临时表是否存在,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8156784/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com