13

在表下的 Sql Developer 中,我看到了表,但有些表的名称为 $。

例子:

  tb$something

以表名命名的“$”符号是什么意思?

4

3 回答 3

11

这并不意味着什么。因为您可以根据需要创建带有美元符号的表(可能不推荐,因为人们可能会混淆认为它们是 oracle 特殊表)。

如果您指的是由 Oracle 拥有的对象SYSSYSTEM然后 Oracle 将其内存结构视图命名为例如V$(例如v$session)。但这些只是 Oracle 公司对其对象使用的命名约定。

于 2012-12-10T10:54:14.667 回答
10

包含前缀V$的表是存储易失性信息的表。

易失性信息是由 Oracle 实例在使用时产生的(在使用中意味着实例已启动并正在运行)。易失性信息包括统计信息、用户的会话信息、内存分配。

于 2013-09-05T13:26:30.940 回答
5

通常,这些是“属于”数据库的表 - 要么是因为它们由预定义用户之一(SYS,...)拥有,要么是因为 Oracle 将它们用于内务管理,例如

  • 全文索引(这些被命名为 DR$... )
  • 物化视图日志(这些被命名为 RUPD$... 和 MLOG$...)

但是您不能依赖该规则,因为(正如 DazzaL 已经提到的),没有什么能阻止您创建自己的名称中带有美元符号的表。

于 2012-12-10T11:04:29.840 回答