MySQLでSQLを入門してみた
昨日に引き続いて今日もサーバー関連の話です・ω・
【関連記事】
・さくらインターネットのVPSを借りました(^o^)
今日は、MariaDBという関係データベース管理システム (RDBMS) でSQLの入門をしてみました。
MariaDBとは、MySQLのことです。
目次
スポンサーリンク
環境
OS: CentOS 7
ハードウェア: さくらインターネットのVPS
接続方法: PuTTY(SSH)
やってみた
とりあえず、一連のシェルの流れを書きます。
「SQLの絵本」という本を参考に、やってみました。とりあえず、成功です\(^o^)/
MariaDB [test]> show variables like "chara%"; +--------------------------+----------------------------+ | Variable_name | Value | +--------------------------+----------------------------+ | character_set_client | utf8 | | character_set_connection | utf8 | | character_set_database | utf8 | | character_set_filesystem | binary | | character_set_results | utf8 | | character_set_server | utf8 | | character_set_system | utf8 | | character_sets_dir | /usr/share/mysql/charsets/ | +--------------------------+----------------------------+ 8 rows in set (0.00 sec) MariaDB [test]> create table tb1( -> code int, -> title varchar(30), -> price int); Query OK, 0 rows affected (0.01 sec) MariaDB [test]> insert into tb1 -> (code, title, price) -> values -> (1, '鉛筆', 120); Query OK, 1 row affected (0.01 sec) MariaDB [test]> select * from tb1; +------+--------+-------+ | code | title | price | +------+--------+-------+ | 1 | 鉛筆 | 120 | +------+--------+-------+ 1 row in set (0.01 sec) MariaDB [test]> insert into tb1 -> (code, title, price) -> values -> (2, 'Cの絵本', 2300); Query OK, 1 row affected (0.00 sec) MariaDB [test]> select * from tb1; +------+------------+-------+ | code | title | price | +------+------------+-------+ | 1 | 鉛筆 | 120 | | 2 | Cの絵本 | 2300 | +------+------------+-------+ 2 rows in set (0.00 sec)
とりあえず、成功です!!
やったー\(^o^)/
少し解説します。
文字コードの確認
まず、文字コードを確認しています。
MariaDB [test]> show variables like "chara%"; +--------------------------+----------------------------+ | Variable_name | Value | +--------------------------+----------------------------+ | character_set_client | utf8 | | character_set_connection | utf8 | | character_set_database | utf8 | | character_set_filesystem | binary | | character_set_results | utf8 | | character_set_server | utf8 | | character_set_system | utf8 | | character_sets_dir | /usr/share/mysql/charsets/ | +--------------------------+----------------------------+ 8 rows in set (0.00 sec)
見ると、character_set_filesystem以外の項目は全てutf8になっていることがわかります。PuTTYの方でも文字コードをutf8に設定する必要があります。
これがズレてしまうと、文字化けしてしまいます。私も最初は、設定していなくて、「???」みたいな感じで文字化けしていました。
詳しくはググってみてください。
テーブルの作成
テーブルを作っています。
MariaDB [test]> create table tb1( -> code int, -> title varchar(30), -> price int); Query OK, 0 rows affected (0.01 sec)
テーブル名はtb1、列名は「code」「title」「price」の3つです。
データを登録
データを登録しています。
MariaDB [test]> insert into tb1 -> (code, title, price) -> values -> (1, '鉛筆', 120); Query OK, 1 row affected (0.01 sec)
テーブルtb1にコードが1、タイトルが鉛筆、値段が120という風に登録しています。
データを表示
データを表示しています。
MariaDB [test]> select * from tb1; +------+--------+-------+ | code | title | price | +------+--------+-------+ | 1 | 鉛筆 | 120 | +------+--------+-------+ 1 row in set (0.01 sec)
今登録したデータを表示してみます。
無事、表示されていますね!完璧です!\(^o^)/
もう1つ登録して表示してみる
もう1度、同じことをやってみます。
MariaDB [test]> insert into tb1 -> (code, title, price) -> values -> (2, 'Cの絵本', 2300); Query OK, 1 row affected (0.00 sec) MariaDB [test]> select * from tb1; +------+------------+-------+ | code | title | price | +------+------------+-------+ | 1 | 鉛筆 | 120 | | 2 | Cの絵本 | 2300 | +------+------------+-------+ 2 rows in set (0.00 sec)
無事、表示されていますね!
実は色々な苦労をした
実はここまで到達するのに、色々な苦労がありました(´;ω;`)
それは、文字コードについてです・・・。
何度、データを登録しても「???」という風に表示されてしまうのです。
文字コードを全てutf8にして、PuTTYでもutf8にしたところ、無事、表示されるようになりました。
いやぁ・・・。大変でした・・・。
ノシ
PS
しばらくの間、データベースとMySQLの勉強をします\(^o^)/
スポンサーリンク
関連記事