WWW SQL Designer で PostgreSQL
2008/01/16
ブラウザで ER 図を書ける WWW SQL Designer というツールがあります。ER 図から 様々な DBMS 向けの SQL 文を生成できるのですが、PostgreSQL 向けの SQL を出力し、PostgreSQL に食わせてみてもエラー。あれ?
例えば良くあるブログのモデルを書いて出力してみると、こうなりました。
CREATE TABLE entries( id INTEGER NOT NULL serial, name text NOT NULL default '', title text NOT NULL default '', body text NOT NULL default '', excerpt text NOT NULL default '', PRIMARY KEY (id) );
うーん、正しくはこうじゃないのかな?serialってSERIAL型だよね?
CREATE TABLE runs( id SERIAL NOT NULL , owner_id INTEGER default '0', blog_id INTEGER default '0', timezone text NOT NULL default '', language text NOT NULL default '', root BIT NOT NULL default '0', PRIMARY KEY (id) );
ということで、ちょっと手直ししてみました。
WWW SQL Designer Patch for PostgreSQL
xml2postgresql.xsl に適用してください。WWW SQL Designer 1.4.1 で確認済みです。
また、PostgreSQL で出力すると外部キー制約が出力されないので、これも Oracle 用スクリプトを参考にして出力するようにしました。
WWW SQL Designer は中間データを XML で保持していて、SQL へは XSLT で変換しているので、かなり容易に変更できました。