使用LIST命令显示DB2中的所有表

Lig*_*ard 23 sql db2

这很令人尴尬,但我似乎无法找到一种方法来列出DB2数据库中表的名称.这是我尝试过的:

root@VO11555:~# su - db2inst1
root@VO11555:~# . ~db2inst1/sqllib/db2profile
root@VO11555:~# LIST ACTIVE DATABASES
Run Code Online (Sandbox Code Playgroud)

我们收到此错误: SQL1092N "ROOT" does not have the authority to perform the requested command or operation.

DB2版本号如下.

root@VO11555:~# db2level
DB21085I  Instance "db2inst1" uses "64" bits and DB2 code release "SQL09071"
with level identifier "08020107".
Informational tokens are "DB2 v9.7.0.1", "s091114", "IP23034", and Fix Pack
"1".
Product is installed at "/opt/db2V9.7".

Dan*_*Dan 31

获取DB2中当前数据库的表列表 - >

连接数据库:

db2 connect to DATABASENAME user USER using PASSWORD
Run Code Online (Sandbox Code Playgroud)

运行此查询:

db2 LIST TABLES
Run Code Online (Sandbox Code Playgroud)

这相当于MySQL中的SHOW TABLES.

在运行list tables命令之前,您可能需要执行'set schema myschema'到正确的模式.默认情况下,登录时您的架构与您的用户名相同 - 通常不包含任何表.您可以使用"值当前架构"来检查当前设置的架构.

  • 如果某些表位于不同的模式中,您还应该尝试运行`db2 LIST TABLES FOR ALL`. (4认同)

Gua*_*gua 21

连接数据库:

db2 connect to <database-name>
Run Code Online (Sandbox Code Playgroud)

列出所有表格:

db2 list tables for all
Run Code Online (Sandbox Code Playgroud)

要列出所选模式中的所有表,请使用:

db2 list tables for schema <schema-name>
Run Code Online (Sandbox Code Playgroud)

要描述表,请键入:

db2 describe table <table-schema.table-name>
Run Code Online (Sandbox Code Playgroud)

信用 http://onewebsql.com/blog/list-all-tables


Pet*_*hle 19

select * from syscat.tables where type = 'T'
Run Code Online (Sandbox Code Playgroud)

您可能希望将查询限制为您的tabschema


Pbx*_*Man 6

我正在使用db2 7.1和SQuirrel.这是唯一对我有用的查询.

select * from SYSIBM.tables where table_schema = 'my_schema' and table_type = 'BASE TABLE';
Run Code Online (Sandbox Code Playgroud)