DB2表全名

时间:2017-02-20 14:46:53

标签: database db2

我在db2表命名方面有点困惑。在db2中,我们有表空间架构数据库名称用户名表名等等...... 我的(愚蠢)问题是:在查询时(即从???中选择*​​),表的完整完整名称是什么?在某些情况下,如果我只放置表名,它就不起作用。 (即表空间架构也是必需的。)
例如,在MySQL中它是[数据库]。[table]。但是DB2呢?

非常感谢您的关注。

1 个答案:

答案 0 :(得分:2)

在DB2中,您连接到数据库,然后从架构和表名称中选择

schema.tablename

对于最终用户而言。在后台可能会有昵称疯狂的事情 - 任何浮出水面的schema.tablename都可以成为其他任何地方的别名(甚至是其他具有联盟的服务器),但从查询的角度来看,它是{{1位置。

  内部使用

表空间和索引空间来映射数据存储在磁盘上的位置,并且只在创建表时才有意义。

     

bufferpools 在内部用于映射数据存储在内存中的位置,并且只在创建表空间时才有效。

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

schema.tablename

特殊字符

在DB2中,名称中可以包含特殊字符。你使用“围绕特殊名称

schema.<objectname>

如果在名称中组合大写和小写,也需要引号。如果名称以大写形式声明,DB2将转换为大写,因此一个主要做法是在所有名称中使用大写和下划线 - 那么您不必担心引用或匹配大小写。