mabots' blog

知のレバレッジを最大化せよ (旧はてなダイアリーから移転しました。)

ERモデリングツール DBDesignerの日本語化

ERモデリングツールでOSSの、「DBDesigner」の日本語化をyossyさんがされていたので紹介です。

http://dbdesigner.iimp.jp/

このソフトER図つくりながら、そのままクエリ発行してDBに反映させることができるので、論理設計レベルであればこのソフトだけで完結できてしまいます。windows, redhatで使えます。(fc6も動作できるようにしているようです。)

外部参照が2段レベルであれば、サクサク使えるので便利なのではないでしょうか。

ただ、ちょっと気になるのが、下記のように3重以上に多重に外部参照したときに、3段目のエンティティになぜか1段目のエンティティのカラムがかってに作られてしまう点です。しかも、2段目が複数エンティティから参照されたときだけ起きているっぽい・・・

Entity 3 = FK => Entity2(id) = FK => Entity1 (id)

Entity3は

  • id(PK)
  • entity2_id(FK)
  • content

Entity2は

  • id(PK)
  • entity1_id(FK)
  • content

Entity1は

  • id(PK)
  • content

上記のようにしたいですが、
Entity3が

  • id(PK)
  • entity2_id(FK)
  • entity1_id(FK)
  • content

となってしまうのです。用途によってはこれでもいいんですが、Entity3とEntity1と結合するパターンが存在しない場合、なんか無駄です。バグってるんすかね。
DBDesignerはまだまだ不安定なところはありますが、データベースの論理設計レベルでつかってあげる分には非常に便利です。