MySQL
 Computer >> コンピューター >  >> プログラミング >> MySQL

MySQLテーブルのカラム名を取得する方法【SHOW・DESCRIBE活用ガイド】

SHOWコマンドでカラム名を取得する

MySQLでは、SHOWコマンドを使うことで、テーブルのカラム(列)名を簡単に確認できます。カラム名だけでなく、データ型やNULL許可、キー情報なども一緒に取得できるのが特徴です。

基本構文

show columns from テーブル名;

サンプルテーブルの作成

まず、動作確認用に「DemoTable」というテーブルを作成します。

mysql> create table DemoTable
(
    StudentId int NOT NULL AUTO_INCREMENT PRIMARY KEY,
    StudentFirstName varchar(20),
    StudentLastName varchar(20),
    StudentAge int,
    StudentAddress varchar(200)
);
Query OK, 0 rows affected (0.54 sec)

カラム名を取得するクエリの実行例

DemoTableのカラム名を取得するには、次のクエリを実行します。

mysql> show columns from DemoTable;

実行すると、以下のような結果が出力されます。

+------------------+--------------+------+-----+---------+----------------+
| Field            | Type         | Null | Key | Default | Extra          |
+------------------+--------------+------+-----+---------+----------------+
| StudentId        | int(11)      | NO   | PRI | NULL    | auto_increment |
| StudentFirstName | varchar(20)  | YES  |     | NULL    |                |
| StudentLastName  | varchar(20)  | YES  |     | NULL    |                |
| StudentAge       | int(11)      | YES  |     | NULL    |                |
| StudentAddress   | varchar(200) | YES  |     | NULL    |                |
+------------------+--------------+------+-----+---------+----------------+
5 rows in set (0.01 sec)

このように、「Field」列に各カラム名が表示され、「Type」列でデータ型、「Key」列で主キー(PRI)などの情報も同時に確認できます。

補足:DESCRIBE文でも同じ結果が得られる

DESCRIBE文(省略形はDESC)を使っても、SHOW COLUMNSとまったく同じ情報を取得できます。より短く書けるため、日常的な確認作業ではこちらがよく使われます。

mysql> describe DemoTable;
-- または
mysql> desc DemoTable;

カラム名だけを一覧で取得したい場合

型やキー情報は不要で、カラム名の一覧だけが必要な場合は、INFORMATION_SCHEMAを参照する方法が便利です。

mysql> SELECT COLUMN_NAME
    -> FROM INFORMATION_SCHEMA.COLUMNS
    -> WHERE TABLE_SCHEMA = 'データベース名'
    -> AND TABLE_NAME = 'DemoTable';

用途に応じてこれらのコマンドを使い分けることで、テーブル構造の確認を効率的に行えます。

  1. 【MySQL入門】テーブルのストレージエンジン(MyISAM/InnoDB)を確認する方法

    MySQLテーブルのストレージエンジンを確認するには? MySQLのテーブルがMyISAMとInnoDBのどちらのストレージエンジンを使用しているかを調べたいときは、SHOW TABLE STATUSステートメントを使います。このコマンドを実行すると、テーブル名・エンジンの種類・行数・作成日時などの詳細情報を一覧形式で取得でき、結果の「Engine」列を見ることでエンジンの種類をすぐに判別できます。 データベース内の全テーブルのエンジンを表示する構文 複数のテーブル(データベース内のすべてのテーブル)の情報を一度に確認したい場合は、次の構文を使用します。 SHOW TABLE STATUS

  2. MySQLで一時テーブルの列(カラム)を一覧表示する方法

    MySQLで一時テーブル(TEMPORARY TABLE)の列を一覧表示するには、まず対象となる一時テーブルを作成しておく必要があります。ここでは例として、学生の詳細情報を格納する複数の列を持つ一時テーブルを作成してみましょう。mysql> CREATE TEMPORARY TABLE DemoTable745 ( StudentId int NOT NULL AUTO_INCREMENT PRIMARY KEY, StudentName varchar(100), StudentAge int, StudentAddress varchar(100),