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

MySQLでMyISAMエンジンのテーブルを作成・確認する方法

MySQLでMyISAMエンジンを使用したテーブルを作成するには、CREATE TABLE文にENGINEオプションを指定します。この記事では、テーブルの作成から、実際にMyISAMエンジンで作成されているかの確認方法まで、具体的なコマンド例とともに順を追って解説します。

MyISAMエンジンのテーブルを作成する

CREATE TABLE文の末尾にENGINE=MyISAMを記述することで、MyISAMエンジンを使用したテーブルを作成できます。

mysql> create table StudentRecordWithMyISAM
   -> (
   -> Id int,
   -> StudentName varchar(100),
   -> StudentAge int
   -> )ENGINE=MyISAM;
Query OK, 0 rows affected (0.26 sec)

上記の例では、ストレージエンジンとして「MyISAM」を明示的に指定しています。これにより、デフォルトのInnoDBではなく、意図的にMyISAMでテーブルが作成されます。

DESCコマンドでテーブル構造を確認する

作成したテーブルにどのようなカラムが定義されているかを確認するには、DESCコマンドを使用します。

mysql> DESC StudentRecordWithMyISAM;

実行結果は以下の通りです。

+-------------+--------------+------+-----+---------+-------+
| Field       | Type         | Null | Key | Default | Extra |
+-------------+--------------+------+-----+---------+-------+
| Id          | int(11)      | YES  |     | NULL    |       |
| StudentName | varchar(100) | YES  |     | NULL    |       |
| StudentAge  | int(11)      | YES  |     | NULL    |       |
+-------------+--------------+------+-----+---------+-------+
3 rows in set (0.00 sec)

Id(int型)、StudentName(varchar型)、StudentAge(int型)の3つのカラムが正しく作成されていることがわかります。

SHOW TABLE STATUSでエンジンを確認する

テーブルが本当にMyISAMエンジンで作成されているかどうかを調べるには、SHOW TABLE STATUSコマンドを使用します。

mysql> SHOW TABLE STATUS FROM business LIKE 'StudentRecordWithMyISAM';

以下の出力では、Engine列に「MyISAM」と表示されており、正しくMyISAMエンジンで作成されていることが確認できます。

+-------------------------+--------+---------+------------+------+----------------+-------------+-----------------+--------------+-----------+----------------+---------------------+---------------------+------------+--------------------+----------+----------------+---------+
| Name                    | Engine | Version | Row_format | Rows | Avg_row_length | Data_length | Max_data_length | Index_length | Data_free | Auto_increment | Create_time         | Update_time         | Check_time | Collation          | Checksum | Create_options | Comment |
+-------------------------+--------+---------+------------+------+----------------+-------------+-----------------+--------------+-----------+----------------+---------------------+---------------------+------------+--------------------+----------+----------------+---------+
| studentrecordwithmyisam | MyISAM |      10 | Dynamic    |    0 |              0 |           0 | 281474976710655 |         1024 |         0 |              1 | 2018-10-22 15:47:01 | 2018-10-22 15:47:02 | NULL       | utf8mb4_unicode_ci |     NULL |                |         |
+-------------------------+--------+---------+------------+------+----------------+-------------+-----------------+--------------+-----------+----------------+---------------------+---------------------+------------+--------------------+----------+----------------+---------+
1 row in set (0.14 sec)

information_schemaからMyISAMテーブルを検索する

データベース内にMyISAMテーブルが存在するかどうかを一括で調べたい場合は、information_schema.TABLESに対してクエリを実行する方法が便利です。

mysql> SELECT TABLE_NAME,
   -> ENGINE
   -> FROM information_schema.TABLES
   -> WHERE TABLE_SCHEMA = 'business' and ENGINE = 'MyISAM';

実行結果は以下の通りです。

+-------------------------+--------+
| TABLE_NAME              | ENGINE |
+-------------------------+--------+
| studentrecordwithmyisam | MyISAM |
+-------------------------+--------+
1 row in set (0.00 sec)

このようにTABLE_SCHEMAENGINEを条件に指定することで、特定のデータベース内にあるMyISAMエンジンのテーブルを簡単に抽出できます。

まとめ

MyISAMエンジンのテーブルは、CREATE TABLE文でENGINE=MyISAMを指定するだけで簡単に作成できます。作成後は、DESCで構造を、SHOW TABLE STATUSinformation_schema.TABLESでエンジンの種類を確認できるため、意図したとおりのテーブルになっているか必ずチェックしておきましょう。

  1. HTMLでキャプション(表題)付きのテーブルを作成する方法

    HTMLでキャプション(表題)付きのテーブルを作成するには、<caption>タグを使用します。キャプションはテーブルの内部に配置され、<table>タグの直後に記述するのが決まりです。 <caption>タグで指定したテキストは、デフォルトではテーブルの上部中央に表示されます。表示位置を変更したい場合は、CSSの「caption-side」プロパティ(top・bottom・left・rightなど)を使って調整することも可能です。 コード例 以下のコードを実行すると、キャプション付きのテーブルがどのように表示されるかを確認できます。 <!DOCTY

  2. MySQLテーブルがMyISAMまたはInnoDBエンジンを使用しているか確認する方法

    MySQLテーブルのストレージエンジンを確認するには? MySQLでテーブルがMyISAMまたはInnoDBのどちらのストレージエンジンを使用しているかを確認したい場合、SHOW TABLE STATUSコマンドを使うのが最も手軽な方法です。このコマンドを実行すると、エンジンの種類だけでなく、行数や作成日時、照合順序など、テーブルに関する詳細情報を一度に取得できます。 基本構文 SHOW TABLE STATUS FROM データベース名 LIKE テーブル名; 上記の構文では、指定したデータベース内の特定のテーブルに関する情報が表示されます。Engine列の値を確認することで、そのテーブル