MySQLビューの定義を取得する方法|SHOW CREATE VIEW文の使い方を解説
MySQLでは、SHOW CREATE TABLE文を使えばテーブルの定義を簡単に確認できます。では、ビュー(VIEW)の定義を取得したい場合はどうすればよいのでしょうか。
実は、ビューは仮想テーブルの一種であり、実際のテーブルをもとに構成されるものです。そのため、テーブルの定義を取得するときと同じ考え方で、ビューの定義も取得できます。具体的には、SHOW CREATE文を使用します。
基本構文
SHOW CREATE VIEW ビュー名;
「ビュー名」の部分には、定義を確認したいビューの名前を指定します。この一文を実行するだけで、そのビューを作成したときのCREATE VIEWステートメント全体を出力してくれます。
実行例
たとえば、「info」という名前のビューの定義を取得したい場合は、次のようにクエリを実行します。
mysql> SHOW CREATE VIEW Info\G
*************************** 1. row ***************************
View: info
Create View: CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `info` AS select `student_info`.`id` AS `ID`,`student_info`.`Name` AS `NAME`,`student_info`.`Subject` AS `SUBJECT`,`student_info`.`Address` AS `ADDRESS` from `student_info`
character_set_client: cp850
collation_connection: cp850_general_ci
1 row in set (0.00 sec)出力結果の見方
実行結果には以下の情報が含まれています。
- View:ビューの名前
- Create View:ビューを作成した際の完全なCREATE VIEWステートメント(ALGORITHM、DEFINER、SQL SECURITYなどの属性も含まれる)
- character_set_client / collation_connection:ビュー作成時に使用された文字セットと照合順序
このように、SHOW CREATE VIEW文を使えば、ビューがどのテーブルのどのカラムを参照しているのかといった詳細な定義情報を一目で確認できます。バックアップやマイグレーション作業の際にも役立つ便利なコマンドなので、ぜひ覚えておきましょう。
-
MySQLでテーブルのAUTO_INCREMENT値を確認する2つの方法【実例付き】
MySQLでは、テーブルに設定されたAUTO_INCREMENT(自動採番)の現在値を簡単に確認できます。主な方法は次の2つです。 方法1:SHOW TABLE STATUSコマンドを使う まず1つ目は、SHOW TABLE STATUSコマンドを使用する方法です。構文は以下のとおりです。 SHOW TABLE STATUS LIKE yourTableName\G 方法2:information_schemaを参照する 2つ目は、システムデータベースであるinformation_schemaから直接取得する方法です。必要な情報だけをピンポイントで取得できるため、スクリプトやアプリケーションか
-
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(