什么是Mysql select语句来显示表的列表?

时间:2009-10-01 01:05:06

标签: sql mysql

我想编写一个程序,可以向用户显示数据库中的表列表,并显示这些表的描述。那么我可以做一个“select * from system_table”或类似的东西吗?

2 个答案:

答案 0 :(得分:6)

这将为您提供表格列表:

show tables;

描述每个表格:

describe table_name;

要同时尝试两者,请尝试:

SELECT * FROM DOMAIN.TABLES WHERE TYPE = 'TABLE'

SELECT * FROM DOMAIN.COLUMNS WHERE TABLETYPE = 'TABLE'

结果类似于MySql show和describe语句

答案 1 :(得分:2)

除了show tables之外,MySQL 5.0+还支持INFORMATION_SCHEMA元数据库:

SELECT table_name, table_comment FROM INFORMATION_SCHEMA.TABLES
WHERE table_schema = 'db_name';

information_schema.tables如果您感到好奇,还会有其他信息。

请注意,如果在创建表并使用InnoDB时未提供注释,则会在table_comment列中填入不必要的数据,例如为此表保留的InnoDB空间或外键约束。