今回は私がよく現場で使用している「MySQL」について再度復習をしました。
【基本】MYSQLの使い方
1. MYSQLとは
データを複数の表の形で管理すること。
複数で管理することにより複雑なデータの取り扱いが可能になり、視覚的に見やすくなります。
リレーショナルデータベースとは?特徴やメリットなどをわかりやすく解説 – クラウド軍師 (smallit.co.jp)
2. MYSQLのメリット
・データに一貫性があり、間違えたデータをとりにくい
→データベースで独立している。
そのためデータが正確かつ整合性が取れており、必要なデータだけを簡単に抽出することが可能。
・たくさんのユーザーに同時に対応が可能
→複数のユーザーがデータベースに同時に入ることが可能で競合も起きない
図のように1台のパソコンからMASTERサーバーから検索をかけて自分が必要なデータを持ってくる。
mysqlでマルチマスター レプリケーションを設定してみる | レンタルサーバー・自宅サーバー設定・構築のヒント (server-setting.info)
・安全性が高い。
→24時間稼働するシステムとウェブサイトに安全に接続ができ、SSLやTTLで通信を暗号化しているのでセキュリティ面も高い。
・間違えたデータを持ってきたとしても、自分が必要とするデータをすぐに取得することが出来る。
3. MYSQLのデメリット
ここまで多くの人に使われているMYSQLですが、デメリットもあります
・一部の機能が制限されている
場所によってはトランザクションの制限や、難しいクエリの実行が出来ないところがあります。
プロジェクトによっては支障が出ますので必ず、上長に確認しましょう。
ただ、基本的に現場では私たちが使わないことが制限されている事が多いので、メリットのが多いです。
4. MYSQLを業務で有効活用するには
・既にあるデータを活用して使用する
→現場では使用するシステムやツールが決まっており、特にデータベースの活用はどこでも必須です。
データ件数が何万件もありかつ列件数がとても多いものがあるときに自分が使用するデータのみを抽出し、テストの内容にそってデータを直すことも多々あります。
そういう状況でMYSQLは大いに役に立ちました。
・新規でデータを追加する
MYSQLに必要なデータがなかった場合、Excelでデータを作成して、CSVファイルで抽出して追加しておくと、同じようなテストケースでわざわざ作らなくても追加したデータを持ってくるだけで簡単にテストケースを確認できるパターンでもMYSQLは役に立ちました。
5. MYSQLを覚えるには
・まずは環境を作ろう
ネットで調べるとMYSQLのインストール方法がたくさんでてきます。
例として下に記載している、「HeidSQL」や「A5:SQL Mk-2」が初心者にはおススメです。
自分が使用ている環境に合わせてインストールしてみましょう。
HeidiSQLの初期設定手順をまとめてみた!PostgreSQL版 | きままブログ (masagoroku.com)
データベースを基本からまとめてみた【A5Mk-2入門】 #SQL - Qiita
・SQL文を理解しよう
まずはよく使うSQL文をしっかりと活用方法と意味を覚えましょう。・CREATE文→テーブル作成
【構文】CREATE テーブル名 フィールド名(列名) データ型(属性)
オプション(条件)
・SELECT文→テーブル参照
【構文】SELECT フィールド名 FROM テーブル名 WHERE フィールド名の値 =
”合致するもの”
・INSERT文→テーブル追加
【構文】INSERT INTO テーブル名 フィールド名 VALUES 値
・UPDATE文→テーブル更新
【構文】UPDATE テーブル名 SET フィールド名=値 WHERE 条件式
・全レコード削除(現場ではあまり使用しない)
【構文】DELETE FROM テーブル名
・一部レコード削除
【構文】DELETE FROM テーブル名 WHERE 条件式
これらの構文は基本でよく使います。しっかりと復習しましょう。
削除の時は必ず上司に聞くこと。
6. MYSQLでよく使用されるツール
・MySQL Workbench
MySQL Workbenchはデータの操作、サーバーの設定が比較的に簡単でデータ設計から開発まで幅広く使われているみたいです。
ウォーターフォールモデルだと使いやすい印象です。
ただ、英語表記と基本的なSQL文を使いこなせるようにならないと難しい印象です。
私も名前しか聞いたことがなく実際に一度も使用したことがありません。
・HeidiSQL
HeidiSQLは初心者によく使われております。
まず無料で使え、データベースを画面で操作することが可能でMYSQL以外にもMariaデータベース、PostgreSQLにも活用することが可能です。
基本的なインポートやエクスポートがクリックとカーソルだけで使うことができます。
さらにデータベースや編集も簡単にすることが出来るのもHeidiSQLの特徴です。
・A5:SQL Mk-2
A5:SQL Mk-2は実際の現場で活用したことがあります。
実際に使用して便利だった点を何点か上げたいと思います。
・わざわざSQL文を打たなくてよい
テーブルを作成するとき、わざわざSQL文を入力しなくてもボタン一つでSQL文を
作成してくれます。
INSERT、UPDATE、DELETEも選択するだけで作成すると実際に視覚的に表に現れるので使いやすかったです。
チェックを入れてからOKを押下
・テーブル定義書の作成が簡単
列が多かったり自分が作成したいテーブルを設定していたら時間がかかりますがA5:SQL Mk-2ではボタン1つで自分が作成したいテーブル定義書を作成し、Excelで出すことが出来るので、テスト手順書にそって結果を確認するときに楽でした。
間違った列名になっていたときは編集して作り直せたのと、列がリンクになっているのでジャンプして対象の列などを確認しておりました。そのままCSVファイルで抽出することも簡単に出来るのも魅力です
上はテーブル単体もシートごとに出すことも可能
Windowsのデータベースツール「A5:SQL Mk-2」5つの便利機能 #SQL - Qiita
・複数のSELECT結果をExcelで出力することが可能です
結果を視覚的に見たい時にExcelに貼るケースが多いです。
A5:SQL Mk-2は単体のテーブルはもちろん複数のテーブルの実行結果もシートを分けてExcelに抽出することが可能です。
シートごとに分けることにより、対象のデータと試験項目を確認しやすいのが利点になります。
・SQLのデータの比較が簡単
同一のSQLを2回実行すると差分内容を視覚的に見ることができます。
1回目実行して2回目を1回目とデータを変更した状態で実行するとどこで差分が起きたかを確認することが確認できます。
自分が正しいフィールド名にデータを挿入したかを確認できる点と間違えた時に気づきやすいことが最大のメリットです。
7. MYSQLのまとめ
MY SQLの使い方のメリットなどについて説明をしてきました。
私自身MY SQLはどこの現場でも使ってきました。
やはりマルチで同時にデータを扱える点やセキュリティ面が高い点、データに整合性があり、一貫性もあることが再度認識でき、これから重宝されるスキルだと思います。
データベースはさまざまな種類があり、どれから勉強したらいいかわからない初心者の方にMY SQLを私はおススメしたいと思います。
MY SQLを覚えておくと関連するツールも同時に覚えられることと結果を確認するのによく使われるExcelの使い方も覚えられます。
SQLは基本的な使い方を覚えれば応用できるようになり業務にかかるコストも大幅に削減できます。
ぜひSQLの構文と使い方、メリットなどを覚えて業務で活用できるようにしましょう。