Help us understand the problem. What is going on with this article?

MySql Workbenchを使ってモデルを自動作成する

More than 3 years have passed since last update.

MySqlのデータベースを扱いたい場合はWorkbenchを使うといいよ!
と言われたので試してみました。

MySqlってなに?

オープンソースなデータベース管理システムで、Webアプリを作る上では一番使われているデータベースです。

特徴 

こちらを参照
- 小さいアプリから大きいアプリまで拡張可
- Linux、Mac、Windowsなどを問わず動作する
- 「SSH」や「SSL」といったセキュリティ技術をサポートしている
 などなど
- バックアップ機能やリカバリー機能など、いざというために大事なデータを守ることができます。

MySql Workbench ってなに?

MySqlのデータベースを扱う上でのスーパーヘルパーです。
データベースのデザインをしたり、それを使って自動的にデータベースを作成したり、クエリできたり、パフォーマンスチェックできたりします。

Schema,Table,Dataを作成するには、A.MySQL Scriptをコードで書く(もしくは読みこむ)か, B.マニュアルにボタンをポチポチ押して作成する,のどちらか選べます。

Screen Shot 2017-09-01 at 11.50.30 AM.png

MySql Workbenchのセットアップ

  1. MySql Workbenchをダウンロードしてください。
  2. MySql Serverを立ち上げる。
    自分はMampを使いました。(Start Serverボタンを押せばOK)
    Screen Shot 2017-09-01 at 11.54.58 AM.png

  3. MySql Workbenchを開いて初期画面に行く
    MySql ConnectionにLocal instanceを一つクリックして、ポップアップでパスワードを催促されたら、MAMPが立ち上がっている証拠です。パスワードはMAMPのデフォルトでrootなので、入力してOK
    Screen Shot 2017-09-01 at 3.54.13 PM.png

Query入力タブがデフォルトで開いているはずです。それぞれのボタンをさらっと説明↓
現在は何のデータベースも読み込んでも作成してないので、クエリにコードを書いても何も出てきません。

Screen Shot 2017-09-01 at 5.28.30 PM.png

A. MySQL Script(コード)からSchemaとテーブル作成してみる

サンプルコードをアップしたので、ダウンロードしてご自由にお使いください。

  • [ 1 ] まずはSQLファイルを開いて、サンプルコードの1-employees.sqlを開いてください。
    (もしくは新規作成してコードを貼り付けてもよいです)

  • [ 2 ] あとは⚡️ボタン(雷)を押して実行する。結果が全て緑だったらSchemaと空テーブルが成功です

Screen Shot 2017-09-01 at 5.37.02 PM.png

  • [ 3 ] 空テーブルの中にデータを流し込む
    あとのコードを全部同じように開いて、実行(⚡️)してください。かなり重いです、読み込みに時間かかります。

  • [ 4 ]データが入っているか確認
    とりあえずデータが入ってるか確認するには、最初に現れたQuery1 タブに適当にコードを書けばよいです。
    Screen Shot 2017-09-01 at 5.42.28 PM.png

  • [ 5 ] MySQLモデルを作成する
    MySQLでいうモデルとは、EER Diagramのことを指しているようです。
    上記のように、コードでデータベースを作ると、自動的にEER Diagramを作成してくれます。
    Databases > Reverse Engineer を選択して、
    あとは作成してくれるまで Continue をポチポチ押していきます。
    LocalHostのパスワードを聞かれたら、最初と同じようにMAMPのデフォルトはrootです。

Screen Shot 2017-09-01 at 12.13.32 PM.png

  • [ 6 ] モデル作成できたらこんな感じ Screen Shot 2017-09-01 at 6.00.34 PM.png

EER Diagramを見ると、テーブルの関係性が一目瞭然なので便利です。
(One-to-one, one-to-many, many-to-manyの関係性)

B. EER DiagramからSchemaとTableを作成する

コードからEER Diagramが作成できるように、EER DiagramからSchema, Table等も作成できます
EER Diagramでモデルを作成したら、

Database > Synchronize Model を選択してください。

Screen Shot 2017-09-01 at 12.12.57 PM.png

とりあえず、ここまで!

Saayaman
バイリンガル・デザイナー・フロントエンドです。 記事を英訳してます。Githubリンク載せてます。画像いっぱい載っけてます。
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした