8-2. MySQL入門②MySQLのコマンド
月末になると、WiFiポケットが全然ばかになってしまって更新しづらい。
MySQL入門続けます。
1. コマンドラインインターフェイスの使用
1-1. セミコロン
1-2.コマンドのキャンセル
2. MySQLのコマンド
2-1. MySQLのコマンド
2-2. データベースの作成
2-3.ユーザーの作成
2-4.テーブルの作成
1-1. セミコロンとコマンドプロンプト
前回、MySQLへのアクセスがうまくいっているか確認するために「SHOW databases;」と打ち込みました。
ここで重要なのが「セミコロン」です。
セミコロンは、MySQLがコマンドを分けたり終わらせたりするために使用します。セミコロンの入力を忘れてしまうとMySQLはプロンプトを表示し次の入力を待つ状態になります。
また、MySQLが表示するプロンプトは6つあり、これを見ると複数行のどこを入力しているかがわかります。
MySQL1プロンプト | 意味 |
---|---|
mysql> | 新しいコマンドの入力を待っている |
-> | 複数行コマンドでの次の行の入力を待っている |
’> | 一重引用符で始まるストリングの次の行の入力を待っている |
”> | 二重引用符で始まるストリングの次の行の入力を待っている |
’> | バッククォードで始まるストリングの次の行の入力を待っている |
/*> | /*で始まるストリングの次の行の入力を待っている |
一重引用符とバックフォードが同じに見えるのは、目の錯覚かな…
1-2.コマンドのキャンセル
コマンドを入力している途中で、そのコマンドの実行を止めたくなった場合は、「\c」を入力して実行キーを押します。
Meaningless gibberish to mmysql \c
2-1. MySQLのコマンド
よく使用されるMySQLのコマンドを紹介します。
コマンド | パラメータ | 意味 |
---|---|---|
ALTER | database,table | databaseまたはtableに変更を加える |
BACKUP | table | tableをバックアップ |
\c | 入力をキャンセル | |
CREATE | database,table | databaseまたはtableを作成 |
DELETE | tableとrowを使った式 | tableからrowを消去 |
DESCRIBE | table | tableの列についての情報を表示 |
DROP | database,table | databaseまたはtableを消去 |
EXIT(Ctrl+C) | 終了 | |
GRANT | user権限 | userの権限を変更 |
HELP(\h, \?) | item | itemに関するヘルプを表示 |
INSERT | dataを使った式 | dataを挿入 |
LOCK | table(s) | (複数の)テーブルをロック |
QUIT(\q) | EXITと同じ | |
RENAME | table | tableの名前を変更 |
SHOW | 表示する多くのitem | itemの詳細を表示 |
SOURCE | filename | filenameに含まれるコマンドを実行 |
STATUS(\s) | 現在の状態を表示 | |
TRUNCATE | table | tableを空にする |
UNLOCK | table(s) | table(s)のロックを解除 |
UPDATE | dataを使った式 | 既存のレコードを更新 |
USE | database | 使用するdatabaseを指定 |
SQLコマンドに関して2つの注意事項があります。
①SQLコマンドとキーワードは大文字小文字で区別されない。
②テーブル名はwindowsでは大文字小文字の区別されないが、LinuxやOSXでは区別される。
2-2.データベースの作成
Publicationsという新しいデータベースを作成してみます。
①CREATE DATABASE publications;と入力します。
作成に成功すると、“Query OK, 1 row affected(0.01 sec)”とメッセージが表示されます。
②作成したデータベースに使用するコマンドUSE publificationsを発行します。
database.objectへの権限をpasswordで識別するusername@hostnameに与えるという意味2-3.ユーザーの作成
ユーザーを作成するには、次の形式をとるGRANTコマンドを発行します。
GRANT PRIVILEGES ON database.object TO ‘username’@’hostname’ IDENTIFIED BY ‘password’;
◎GRANTコマンドのパラメータ例
引数 | 意味 |
---|---|
*.* | すべてのデータベースとそのすべてのオブジェクト |
database. * | databaseという名前のデータベースとそのすべてのオブジェクト |
database.object | databaseという名前のデータベースとそのobjectという名前のオブジェクト |
新しいpublicationsデータベースとそのすべてのオブジェクトいアクセスできるユーザーを次のコマンドで作成します。
2-4.テーブルの作成
テーブルの作成をしていきます。テーブルを作成する際は、「USE punlicatons;」というコマンドを入力し、使用するデータベースを必ず特定しておきます。
以下を入力し、名前のテーブルを作成します。
mysql> CREATE TABLE classics(
-> author VARCHAR(128),
-> title VARCHAR(128),
-> type VARCHAR(16),
-> year CHAR(4)) ENGINE MyISAM;
DESCRIBEコマンドでMySQLテーブルが正しく作成されたかどうか確認すると、以下が出力されます。
・Field
テーブル内のフィールドまたは列の名前
・Type
フィールドに保持するデータの型
・Null
フィールドにNULL値を含めることができるかどうか示す
・Key
MySQLはキーやインデックスをサポートする。これはデータを速く探し探索するための方法でkey見出しは適用されるキーのタイプを示す
・Default
新しい行の作成時、値が指定されていない場合に、このデフォルト値がフィールドに割り当てる
・Extra
フィールドのオートインクリメントが設定されているかどうかなど追加情報を示す
いじょー