CREATE TABLE テーブル名 (
カラム名 データ型 (オプション),
カラム名 データ型 (オプション),
カラム名 データ型 (オプション)
)
※「テーブル名」と「カラム名」は64バイト以内
刀剣情報を格納するテーブルを作成します。
CREATE TABLE Touken (
#刀剣ID(NULL禁止、ID自動設定)
id INT(11) NOT NULL AUTO_INCREMENT,
#刀剣名
name VARCHAR(64),
#武将ID 刀剣の持ち主
busho_id INT(11),
#「PRIMARY KEY」を「id」に指定
PRIMARY KEY (id)
)
武将情報を格納するテーブルを作成します。
CREATE TABLE Busho (
#武将ID(NULL禁止、ID自動設定)
id INT(11) NOT NULL AUTO_INCREMENT,
#武将名
name VARCHAR(64),
#「PRIMARY KEY」を「id」に指定
PRIMARY KEY (id)
)
「id」カラムに「NOT NULL」オプションを指定してあります。
対象テーブルにレコードが追加される際に、「id」カラムが空(null)であることを禁止します。
「id」カラムに「AUTO_INCREMENT」オプションを指定してあります。
対象テーブルにレコードが追加される際に、「id」カラムにセットされるデータが空(null)であった場合に、最初に「1」をセットします。
以降は、レコードが追加されるたびに、自動で、「前回追加した値+1」の値がセットされます。
わざわざ「id」値を指定しなくても、自動で、「1,2,3,・・・」とセットしてくれます。
「PRIMARY KEY (id)」とすることで、「id」カラムを「PRIMARY KEY」に設定しています。
「PRIMARY KEY」とは、そのカラム(もしくは、複数カラムの組合せ)で、一意となる(唯一のレコードであることが決定される)ものをいいます。別名「主キー」ともいわれます。
つまり、「idカラムに格納されている値は、全レコード違う値である」ことを強制する設定です。
「PRIMARY KEY」に対しては、自動でインデックスが作成されます。このサンプルの場合(大量のデータがある場合)、「id」カラムを抽出条件とした検索が速くなります。
DROP TABLE テーブル名
バックアップを取っておけば復元することもできますが、間違えてテーブルを削除してしまわないように、気をつけましょう。
テーブル一覧を取得する方法です。
『mysql> SHOW TABLES』
カレントデータベースに存在するテーブル名(「Touken」「Busho」など)が表示されます。
※指定したデータベースに、テーブルが1つも存在しない場合は、「Empty set」と表示されます。
※指定したデータベースが存在しない場合は、エラーメッセージが返されます。
『mysql> SHOW TABLES from ToukenDB』
「ToukenDB」に存在するテーブル一覧を表示します。カレントデータベースではないデータベースのテーブル一覧を取得する場合に指定します。
LIKE句を使用して、ワイルドカード抽出することもできます。
『mysql> SHOW TABLES LIKE 'Tou%'』
「Tou」で始まるテーブルのみを表示します。
テーブル名のみではなく、各テーブルに対する詳細情報を取得できます。
『mysql> SHOW TABLE STATUS¥G』
※「¥G」を付けると、1行ごとに改行され、見やすくできます。
項目名 | 意味 |
---|---|
Name | テーブル名 |
Type | テーブル種類 |
Row_format | レコード保存形式(Fixed、Dynamic、Compressed) |
Rows | レコード数 |
Avg_row_length | レコード平均長 |
Data_length | データファイルの大きさ |
Max_data_length | データファイルの最大値 |
Index_length | インデックスファイルの大きさ |
Data_free | 割り当て済みの中で使用されていないバイト数 |
Auto_increment | autoincrement値(次にセットされる値) |
Create_time | テーブル作成日時 |
Update_time | 最終更新日時 |
Check_time | 最終チェック日時 |
Create_options | 「CREATE TABLE」発行時に使用された拡張オプション |
Comment | テーブル作成時につけられたコメント |
対象のテーブルを作成するための「CREATE TABLE」文を取得できます。
『mysql> SHOW CREATE TABLE Touken』
「刀剣(Touken)」テーブルを作成するための「CREATE TABLE」文が表示されます。
2022年09月28日(金)16:00~16:55 「ビッグデータ処理のデータベースとして MySQL HeatWave が最適な理由 〜AWS Aurora/Redshift、GCP BigQuery との性能&コスト比較〜」 と題したウェビナーが開催されました。 皆様のご参加、誠にありがとうございました。 当日の資料は以下から無料でご覧いただけます。 ご興味のある企業さま、ぜひご...
OSS×Cloud ACCESS RANKING