Memo

メモ > 技術 > データベース: MySQL > A5:SQL Mk-2

■A5:SQL Mk-2
※Windows用のデータベース管理ツール また、テーブル定義をもとにER図の雛形を作成することもできる A5:SQL Mk-2 - フリーの汎用SQL開発ツール/ER図ツール .. 松原正和 https://a5m2.mmatsubara.com/ A5:SQL Mk-2に回帰した話 | フューチャー技術ブログ https://future-architect.github.io/articles/20220225a/ ■接続先の追加 初回起動時に接続先を確認されるので設定できる その後はメニューの「データベース → データベースの追加と削除」から追加できる ■接続先の追加(トンネル接続の場合) 接続設定画面の「SSH2トンネル」タブで、サーバの接続情報を入力する 「基本」タブでは、そのサーバ内からデータベースへ接続する際の情報を入力する ■接続先の追加(Docker環境の場合) ・XAMPPをインストールしている ・WSL2に手動でDockerをインストールしている ・DockerのMySQLコンテナを起動させている という環境で確認 通常どおりA5:SQLのメニューから データベース → データベースの追加と削除 → 追加 → MySQL/MariaDB直接接続 として接続設定を行う 「基本」タブで以下のとおり設定 ホスト名: localhost ポート番号: 3306 ユーザ名: root パスワード: (docker-compose.yml の MYSQL_ROOT_PASSWORD で設定した値) データベース: (docker-compose.yml の MYSQL_DATABASE で設定した値) これで接続ができた なおXAMPPとコンテナの両方を起動させている場合、 「コンテナが起動されていると、コンテナのMySQLに接続できるがXAMPPのMySQLには接続できない」 「コンテナが起動されていなければ、コンテナのMySQLに接続できないがXAMPPのMySQLには接続できる」 となった 【Docker】DockerコンテナのDBに外部のA5:SQL Mk-2から接続する方法 | とんプログラミング https://programming.sincoston.com/docker-db-connect-pg-external/ 環境によっては接続先は localhost(127.0.0.1)で無いことがあるらしい その場合、以下などが参考になるかもしれない(未検証) Windows 10 Home(WSL2)のDockerでMySQL立ち上げてWindows側からA5:SQL Mk2で接続してみる | Snow System https://snowsystem.net/container/docker/docker-mysql-wsl-a5sql/ ■ER図を書く 以下でツールの基本操作が紹介されている ERエディタ - ER図ツール https://a5m2.mmatsubara.com/help/ER/ ER図を作成したいデータベースを選択し、メニューから「データベース → ER図 → ER図のリバース生成」を実行 テーブル一覧が表示されるので、すべてのテーブルを選択して「リバースER生成」ボタンを押す しばらく待つとER図が表示される。ただしテーブル間の関連は反映されていない 以下を参考にする限り、関連は手動での設定が必要みたい 描ける!ER図 https://www.slideshare.net/nekoruri/er-14127685 メニューの「ER図 → 表示レベル」は「属性」がデフォルトとなっているが、 これを例えば「属性とデータ型」にすると、列名も一緒に表示される この設定は「属性(論理名と物理名)」もしくは「属性(論理名と物理名)とデータ型(位置揃え)」にしておくのが判りやすいかもしれない メニューの「ER図 → ER図プロパティ」から、プロジェクト名や著作者などを登録できる 何に使われているかは不明だが、単純にドキュメントの情報として持っているだけかもしれない 「プロジェクト名」と「RDBMS種類」は、適切なものにしておくと後々混乱しなくて良さそう メニューの「設定 → オプション → ER図」から、ER図に関するオプションを調整できる 基本的にデフォルトのままで問題なさそうだが、「オブジェクトをスナップする」の間隔など、必要に応じて調整する メニューの「設定 → オブジェクトの追加 → リレーションシップ」から、テーブル間の関連を設定できる 「親エンティティをクリック(主キーがある方) → 子エンティティをクリック(xxx_id がある方)」 とクリックすると線が引かれる この線をダブルクリックするとリレーションの詳細を設定できる 基本的に ・「カーディナリティ」は「1」対「0以上」 ・「依存」にチェックしない ・「リレーション」は「代理キー」と設定したい「xxx_id」の列 として「適用」をクリックする …でいいはずだが、先の引かれる位置がおかしい?また調査する メニューの「設定 → オブジェクトの追加 → エンティティ」から、テーブルを追加できる 追加されたエンティティをダブルクリックすると、列の追加ができる 作成済みのエンティティをダブルクリックすると、列の追加編集削除などができる メニューの「ER図 → DDLを作成する」から、ER図をもとにSQLを作成できる 必要に応じて設定を変更してから「DDL生成」ボタンを押す ER図に修正を加える場合、基本的にはデータベース定義を見ながらA5:SQL上で作業することになる…はず ただし新規にテーブルを追加する場合、いったん対象テーブルをリバース生成し、それをコピー&ペーストで持ってくると早い…はず メニューの「ファイル → 名前をつけて保存」から、拡張子「a5er」のファイルとしてER図を保存できる 次回このファイルを開けば、ER図が再現される その他、以下などを参考にすると良さそう 若手プログラマー必読!5分で理解できるER図の書き方5ステップ https://it-koala.com/entity-relationship-diagram-1897 ひととおり基本が紹介されている ER図とは?書き方や用語・テクニックを徹底解説 https://products.sint.co.jp/ober/blog/create-er-diagram 「ER図を見やすくするテクニック」部分などを参考にする 「親エンティティは左上から書く」は、常に意識しておくと良さそう 若手プログラマー必読!5分で理解できるER図の書き方5ステップ https://it-koala.com/entity-relationship-diagram-1897

Advertisement