MySQLのよく使うコマンドとオプションまとめ
はじめに
MySQLは様々な環境において幅広く利用されているデータベース管理システムです。MySQLには多くの便利なコマンドが用意されており、開発者の方はそのコマンドを使ってデータベースの操作を実施します。
本記事では、MySQLのコマンドやそれに付随するオプションについて解説していきます、
ログイン
MySQLを操作するにあたって何よりも最初に行うのはMySQLのログインです。
基本的なログインコマンドを下に示します。
mysql
MySQLにログインするコマンドは上記のようになっています。
この状態の場合のホスト名、ユーザ名、パスワードのデフォルト設定値は
ホスト名 : localhost
ユーザ名 : Windows = ODBC , Unix = Unixのログイン名
パスワード : なし
となっています。
それぞれを指定したい場合には以下のオプションを使用します。
mysql -h {ホスト名} -u {ユーザー名} -p
-h : ホスト名の指定
-u : ユーザ名の指定
-p : パスワードの指定。このオプションを入力した状態でログインするとパスワード入力の画面が表示されます。
-D : データベースの指定(データベース名を一番後ろに着けた場合は、「-d」コマンドを使用することなくデータベースの指定ができます。
例 : mysql -u user1 -p sample
-e : コマンドラインから直接SQLコマンドを実行することが可能です。
例 : mysql -u user1 -e 'SHOW DATABASE'
データベースの作成と削除
データベースの作成には以下のコマンドを使用します。
#データベースの作成
CREATE DATABASE {データベース名};
#データベースの削除
DROP DATABASE {データベース名};
データベースを作成するコマンドのオプションは以下のようになっています。
#同名のデータベースが存在しない場合に作成する。
CREATE DATABASE IF NOT EXISTS {データベース名};
#デフォルトの文字コードを指定する。
CREATE DATABASE {データベース名} DEFAULT CHARACTER SET {文字コード};
#データベースの照合順序を指定する。
CREATE DATABASE {データベース名} COLLATE {照合順序};
データベースの操作
データベースの参照などは以下の通り実施します。
#作業中のデータベース確認
SELECT DATABASE();
#データベースの切替
USE {データベース名};
#データベースの一覧を確認
SHOW DATABASE;
#文字コードの変更
ALTER DATABASE {データベース名} CHARACTER SET {変更後の文字コード};
#データベース作成時の情報
SHOW CREATE DATABASE {データベース名};
テーブルの作成
データベースを作成すると、実際にデータを格納するためのテーブルを作成しなければいけません。
テーブルの作成は以下のコマンドで実施することができます。
#テーブルの作成
CREATE TABLE {データベース名}.{テーブル名} ({カラム名} ,{データ型});
#テーブルの削除
DROP TABLE {テーブル名};
テーブル作成時のオプションは以下の通りです。
#同名のテーブルが存在しない場合に作成する。
CREATE TABLE IF NOT EXISTS {データベース名}.{テーブル名} ({カラム名} {データ型});
#文字コードを設定する
CREATE TABLE {データベース名}.{テーブル名} ({カラム名} {データ型}) DEFAULT CHARACTER SET {文字コード};
#NULLを許可しない
CREATE TABLE {データベース名}.{テーブル名} (
{カラム名1} {データ型} NOT NULL,
{カラム名2} {データ型}
);
#カラムを連番に設定する
CREATE TABLE {データベース名}.{テーブル名} (
{カラム名1} {データ型} AUTO_INCREMENT,
{カラム名2} {データ型}
);
#プライマリーキー(主キー)を設定する
CREATE TABLE {データベース名}.{テーブル名} (
{カラム名1} {データ型} NOT NULL PRIMARY KEY,
{カラム名2} {データ型}
);
#ユニークキーを設定する
CREATE TABLE {データベース名}.{テーブル名} (
{カラム名1} {データ型} UNIQUE,
{カラム名2} {データ型}
);
#カラムのデフォルト値を設定する
CREATE TABLE {データベース名}.{テーブル名} (
{カラム名1} {データ型} DEFAULT {デフォルト値},
{カラム名2} {データ型}
);
#カラムにインデックスを設定する
CREATE TABLE {データベース名}.{テーブル名} (
{カラム名1} {データ型} ,
{カラム名2} {データ型}
INDEX(カラム名1, カラム名2)
);
テーブルへのデータ操作
データの入力や削除は以下のコマンドで実施します。
#データの入力
INSERT INTO {テーブル名} {カラム名1, カラム名2} VALUES {カラム1に入力する値, カラム2に入力する値};
#データの更新
UPDATE {テーブル名} SET {カラム名} = '{新しい値}';
#データの削除
DELETE FROM {テーブル名} [WHERE 削除対象]
例:テーブル名「exa」、カラム名「sample」にある、値が「100」のデータを削除する。
1.DELET FROM exa WHERE sample = 100;
#すべてのデータを削除
DELETE FROM {テーブル名}
テーブルに対する操作
テーブルへの操作は以下のように行います。
#定義の確認
DESC {テーブル名};
#作成したすべてのテーブルを閲覧する
SHOW TABLES;
#文字コードの変更
ALTER TABLE {テーブル名} CHARACTER SET {変更後の文字コード};
#テーブル作成時の情報
SHOW CREATE TABLE {テーブル名};
#カラムの追加
ALTER TABLE {テーブル名} ADD {カラム名} {データ型};
#カラム名の変更
ALTER TABLE {テーブル名} RENAME COLUMN {変更前カラム名} TO [変更後カラム名];
#カラムの削除
ALTER TABLE {テーブル名} DROP {カラム名};
#プライマリーキーの追加
ALTER TABLE {テーブル名} ADD PRIMARY KEY ({カラム名1}, {カラム名2});
#プライマリーキーの削除
ALTER TABLE {テーブル名} DROP PRIMARY KEY;
#カラムのデータ型変更
ALTER TABLE {テーブル名} MODIFY {カラム名} {変更後のデータ型};
さいごに
いかがだったでしょうか。
本記事ではMySQLでよく利用されるコマンドとオプションについてまとめました。ここで紹介したもの以外にもまだ数多くコマンドが存在しています。
コマンドを忘れてしまった場合、本記事を思い出していただけると幸いです。