【问题标题】:DB2 table full nameDB2 表全名
【发布时间】:2017-02-20 14:46:52
【问题描述】:

我对 db2 表命名有点困惑。在 db2 中,我们有 tablespaceschemadatabase nameusernametable name等等……
我的(愚蠢的)问题是:查询时(即从 ??? 中选择 *),表的 fullcomplete 名称是什么?在某些情况下,如果我只输入 表名,它就不起作用。 (即 tablespaceschema 也是必需的。)
例如,在 MySQL 中它是 [database].[table]。但是 DB2 呢?

非常感谢您的关注。

【问题讨论】:

    标签: database db2


    【解决方案1】:

    在 DB2 中,您连接到数据库,然后从模式和表名中进行选择

    schema.tablename
    

    对于最终用户来说就是这样。在后台可能会发生一些疯狂的昵称——任何出现的schema.tablename 都可以是其他任何地方的别名(甚至是其他具有联邦的服务器),但从查询的角度来看,它位于schema.tablename 位置。

    表空间和索引空间在内部用于映射数据在磁盘上的存储位置,并且仅在您创建表时才重要。

    缓冲池在内部用于映射数据在内存中的存储位置,仅在您创建表空间时才重要。

    其他对象(视图、索引、存储过程、函数和序列)就像表一样

    schema.<objectname>
    

    特殊字符

    在 DB2 中,名称中可以包含特殊字符。您使用 " 来围绕特殊名称

    schema."tablename with space"
    

    如果您在名字中结合了大写和小写,也需要引号。如果名称以大写形式声明,DB2 将转换为大写,因此主要做法是在所有名称中使用大写和下划线——这样您就不必担心引用或匹配大小写。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-06-12
      • 1970-01-01
      • 2023-04-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多