421

MySQLコンソールから、特定のテーブルのスキーマを表示するコマンドはどれですか?

4

5 に答える 5

616

フォーマットされた出力の場合:

describe [db_name.]table_name;

テーブルの作成に使用できるSQLステートメントの場合:

show create table [db_name.]table_name;
于 2009-09-30T15:20:05.330 に答える
114
SHOW CREATE TABLE yourTable;

また

SHOW COLUMNS FROM yourTable;
于 2009-09-30T15:17:34.947 に答える
19

desc表の説明と同様に、説明に省略形を使用することもできます。

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    |       |
+----------+-------------+------+-----+---------+-------+
于 2016-01-27T14:09:45.813 に答える
15

おそらく、質問は2つの異なる方法で読み取ることができるため、ここで必要なものについてもう少し正確にする必要があります。すなわち

  1. mysqlでテーブルの構造/定義を取得するにはどうすればよいですか?
  2. このテーブルが存在するスキーマ/データベースの名前を取得するにはどうすればよいですか?

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

SELECT `table_schema` 
FROM `information_schema`.`tables` 
WHERE `table_name` = 'whatever';
于 2017-11-10T11:33:46.370 に答える
6
SELECT COLUMN_NAME, TABLE_NAME,table_schema
FROM INFORMATION_SCHEMA.COLUMNS;
于 2016-10-14T10:31:49.467 に答える