このエントリーをはてなブックマークに追加


MySQLでテーブルの構造を確認する方法

MySQLで定義したテーブルの構造を確認するコマンドを3つ紹介します。
使用したOSはCentOS6,MySQLのバージョンは以下の通りです。

mysql> select version();
+-----------+
| version() |
+-----------+
| 5.1.61    |
+-----------+

使用したテーブル

CREATE TABLEコマンドで以下のテーブルを作成しました。

mysql> create table t1 (c1 int, c2 int);
Query OK, 0 rows affected (0.02 sec)

DESCを使用

以下の構文でテーブル構造を確認することができます。

DESC テーブル名 ;

以下、実行結果です。

mysql> desc t1;
+-------+---------+------+-----+---------+-------+
| Field | Type    | Null | Key | Default | Extra |
+-------+---------+------+-----+---------+-------+
| c1    | int(11) | YES  |     | NULL    |       |
| c2    | int(11) | YES  |     | NULL    |       |
+-------+---------+------+-----+---------+-------+
2 rows in set (0.00 sec)

SHOW FULL COLUMNS FROM テーブル名

以下の構文でテーブル構造を確認することができます。

SHOW FULL COLUMNS FROM テーブル名 ;

以下、実行結果です。

mysql> SHOW FULL COLUMNS FROM t1;
+-------+---------+-----------+------+-----+---------+-------+---------------------------------+---------+
| Field | Type    | Collation | Null | Key | Default | Extra | Privileges                      | Comment |
+-------+---------+-----------+------+-----+---------+-------+---------------------------------+---------+
| c1    | int(11) | NULL      | YES  |     | NULL    |       | select,insert,update,references |         |
| c2    | int(11) | NULL      | YES  |     | NULL    |       | select,insert,update,references |         |
+-------+---------+-----------+------+-----+---------+-------+---------------------------------+---------+
2 rows in set (0.00 sec)

SHOW CREATE TABLE テーブル名

以下の構文でテーブル構造を確認することができます。

SHOW CREATE TABLE テーブル名 ;

以下、実行結果です。

mysql> SHOW CREATE TABLE t1;
+-------+-------------------------------------------------------------------------------------------------------------------+
| Table | Create Table                                                                                                      |
+-------+-------------------------------------------------------------------------------------------------------------------+
| t1    | CREATE TABLE `t1` (
  `c1` int(11) DEFAULT NULL,
  `c2` int(11) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8 |
+-------+-------------------------------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)

用途によって使用してみてください。


トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2015-03-20 (金) 22:08:00