oracle中“tab”表和all_tables之间的区别

时间:2013-01-28 22:24:21

标签: sql oracle oracle10g oracle11g

使用(在oracle中)

返回的表
select * from tab

select * from all_tables

我想知道两者之间的区别。

1 个答案:

答案 0 :(得分:12)

tab是一个永远不应使用的古代数据字典表。它仅用于为几十年前编写的脚本提供向后兼容性。随着新对象类型和新功能的添加,tab不会更新。

  • all_tables为您提供有关您有权访问的所有表格的信息。
  • tab为您提供有关您拥有的表格,视图和同义词的信息(使其与user_tablesuser_synonymsuser_views等视图更相似。但是,它不知道回收站之类的内容,因此tab将显示所有名称为BIN$+K4PlriXSGetpagyHCvBGA==$0的表位于回收站中。实际上,至少自Oracle 7天以来添加的任何对象类型都可能会为tab等遗留数据字典表带来问题。