mysql(データベース管理システム)
データベースを管理するソフトウェアのこと
mysqlコマンドラインクライアント
mysqlサーバーはSQL文の命令として受け取ってさまざまな処理をする。
プログラミング言語で記述されたプログラムがSQL文を送出する。
そしてそのSQL文を実行するプログラムもある。
それがmysqlコマンドラインクライアントだ。
mysqlコマンドラインクライアントの起動
************@mbp training % mysql -u root
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 11
Server version: 8.0.28 Homebrew
Copyright (c) 2000, 2022, Oracle and/or its affiliates.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
これがmysqlコマンドラインクライアント
を起動させていたのか。
知らなかった。
いろいろオプションがあるようだか、これは飛ばす。
mysqlコマンドラインクライアントでの操作
mysql> SELECT id, name,
-> adress, zipcode
-> FROM mytable
-> ;
ERROR 1046 (3D000): No database selected
mysql> SELECT id, name,address,zipcode FROM mytable;
ERROR 1046 (3D000): No database selected
この2つのコードの意味は同じ
である。
'> ">の途中
'
,"
で閉じずに改行した場合は'>
,">
が表示される。
そして;
で終端文字を入力しても閉じられていないので終わらない。
閉じた後に終端文字を入力すれば終わる。
ERROR 1046 (3D000): No database selected
mysql> SELECT id, name,
-> adress, 'zipcode
'> ;
'> '
-> FROM mytable
-> ;
ERROR 1046 (3D000): No database selected
このコマンドを入力するとmytableから取り出せる。
ERROR 1046 (3D000): No database selected
が表示されたのは
まだテーブルを作成していないからだ。
結果を縦に出力
mysqlは通常は横向きに表示される。
このように
mysql> select * from users;
+----+--------------------+
| id | name |
+----+--------------------+
| 60 | ブイゼル |
| 61 | あ |
| 62 | あ |
| 63 | あ |
| 64 | あ |
| 65 | あ |
| 66 | あ |
| 67 | あ |
| 68 | あ |
| 69 | い |
| 70 | あ |
| 71 | あ |
| 72 | ブイゼル |
| 73 | ブイゼル |
| 74 | ブイゼル |
| 75 | ブイゼル |
| 76 | 早起き |
| 77 | あ |
| 78 | あ |
+----+--------------------+
19 rows in set (0.00 sec) |
終端文字;
の代わりに\G
と入力すると縦向き
に表示される。
mysql> select * from users\G
*************************** 1. row ***************************
id: 60
name: あ
*************************** 2. row ***************************
id: 61
name: あ
*************************** 3. row ***************************
id: 62
name: a
*************************** 4. row ***************************
id: 63
name: a
*************************** 5. row ***************************
id: 64
name: あ
*************************** 6. row ***************************
id: 65
name: a
*************************** 7. row ***************************
id: 66
name: あ
*************************** 8. row ***************************
id: 67
name: あ
*************************** 9. row ***************************
id: 68
name: あ
*************************** 10. row ***************************
id: 69
name: い
*************************** 11. row ***************************
id: 70
name: あ
*************************** 12. row ***************************
id: 71
name: あ
*************************** 13. row ***************************
id: 72
name: ブイゼル
*************************** 14. row ***************************
id: 73
name: ブイゼル
*************************** 15. row ***************************
id: 74
name: ブイゼル
*************************** 16. row ***************************
id: 75
name: ブイゼル
*************************** 17. row ***************************
id: 76
name: 早起き
*************************** 18. row ***************************
id: 77
name: a
*************************** 19. row ***************************
id: 78
name: a
19 rows in set (0.00 sec)
このようになる。
縦表示に適しているは
カラム名が多い
こと。
カラム名の文字列が長い
場合。
またみて分かるが
件数の多いテーブルには適さない
。
mysqlコマンドラインクライアントの終了
exit
,quit
,\q
の3種類で終了できる。
また起動しなければならない。
mysql> exit
Bye
******@mbp training %
対話モードとバッチモード
通常のmysqlコマンドラインクライアント
は対話モードと言う。
今まで見てきたコマンドを打ってその後結果が表示される状態のこと。
そのほかにもう一つ状態それがバッチモード
がある。
それはあらかじめファイルにファイルに記述しておいたSQL文を実行したり、コマンドラインに直接SQL文を記述する。
ちょっとこれはできなかった。
まぁ理解はできた。
mysqlコマンドラインクライアントのその他の情報
mysqlコマンドラインクライアント上で矢印キーの上、下
を押すと入力履歴
が呼び出せる。
入力途中でTab
キーを押すとテーブル名やSQLの命令命令などを補完
してくれるので入力時に便利。