如何显示表的列名?

mic*_*ico 19 mysql

情况很简单:您有一个 MySQL 数据库,其中只有一个 SQL 查询接口,并且您想通过查询了解数据库结构。您可以使用show tables;命令列出表,但如何查看各个列名?

SELECT语句显示Empty set是否不存在数据,因此不能使用。)

msi*_*i77 37

select column_name from information_schema.columns where table_name='table'
Run Code Online (Sandbox Code Playgroud)

  • 同时我发现这个查询也很有用:`show create table <table_name>` 在这里你把表名放在纯文本中而不是 <table_name>。这也给出了类型,而您的类型非常适合上市目的。 (2认同)

mic*_*ico 7

我自己发现的最佳解决方案是desc table_name命令。更多信息在List MySQL Tables 上。这个命令给出了一个数据库表的描述,这正是我试图找出的。


Rol*_*DBA 6

要确保在当前数据库中列出表中的列,请使用 DATABASE() 或 SCHEMA() 函数。如果您不在当前数据库中,则返回 NULL。此查询将按照列的定义顺序显示表中的列:

SELECT column_name,column_type
FROM information_schema.columns
WHERE table_schema = DATABASE()
AND table_name='table'
ORDER BY ordinal_position;
Run Code Online (Sandbox Code Playgroud)