web-dev-qa-db-ja.com

MySQLデータベースのテーブルのスキーマを表示する方法

MySQLコンソールから、どのコマンドが特定のテーブルのスキーマを表示しますか?

333
dlamblin
describe [db_name.]table_name;

定様式出力の場合

show create table [db_name.]table_name;

テーブルの作成に使用できるSQL文用です。

468
Omry Yadan
SHOW CREATE TABLE yourTable;

または

SHOW COLUMNS FROM yourTable;
100
Bobby

テーブル記述にdescとしてdescribeの省略形を使用することもできます。

desc [db_name。] table_name;

または

db_nameを使用してください。
desc table_name;

テーブルの説明にexplainを使用することもできます。

[db_name。] table_nameを説明します。

公式文書を見てください

次のような出力が得られます。

+----------+-------------+------+-----+---------+-------+
| Field    | Type        | Null | Key | Default | Extra |
+----------+-------------+------+-----+---------+-------+
| id       | int(10)     | NO   | PRI | NULL    |       |
| name     | varchar(20) | YES  |     | NULL    |       |
| age      | int(10)     | YES  |     | NULL    |       |
| sex      | varchar(10) | YES  |     | NULL    |       |
| sal      | int(10)     | YES  |     | NULL    |       |
| location | varchar(20) | YES  |     | Pune    |       |
+----------+-------------+------+-----+---------+-------+
15
Somnath Muluk

は2つの異なる方法で読むことができるので、何が必要なのかについて、ここでもう少し正確に質問する必要があります。すなわち.

  1. Mysqlでテーブルの構造/定義を取得する方法
  2. このテーブルが存在するスキーマ/データベースの名前を取得する方法

受け入れられた答えを考えると、OPは明らかにそれが最初の方法で解釈されることを意図していました。他の方法で質問を読んでいる人のために

SELECT `table_schema` 
FROM `information_schema`.`tables` 
WHERE `table_name` = 'whatever';
8
Paul Campbell
SELECT COLUMN_NAME, TABLE_NAME,table_schema
FROM INFORMATION_SCHEMA.COLUMNS;
5
Lam