サンプルのスキーマ
<databases> <database name="db1" javaPackage="org.asyrinx.joey.gen.sample1.${packageType}"> <table name="party" label="パーティ" > <column name="party_id" required="true" type="BIGINT" primaryKey="true" readonly="true" label="パーティID"/> <column name="party_code" required="true" type="VARCHAR" size="30" label="パーティコード" unique="true"/> <column name="name" required="true" type="VARCHAR" size="50" label="名前" indexed="true"/> <column name="name_kana" required="false" type="VARCHAR" size="50" label="カナ名" indexed="true"/> </table> <table name="party_relation_type" label="パーティ関係種別"> <column name="party_relation_type_id" required="true" type="BIGINT" primaryKey="true" readonly="true" label="パーティ関係種別ID" /> <column name="name" required="true" type="VARCHAR" size="50" label="関係種別名" /> </table> <table name="party_relation" label="パーティ関係"> <column name="party_relation_id" required="true" type="BIGINT" primaryKey="true" label="パーティ関係ID" /> <column name="owner_party_id" required="true" type="BIGINT" label="関係元パーティID" fk="party.party_id"/> <column name="target_party_id" required="true" type="BIGINT" label="関係先パーティID" fk="party.party_id"/> <column name="party_relation_type_id" required="true" type="BIGINT" visible="false" label="関係種別ID" fk="party_relation_type.party_relation_type_id"/> </table> <table name="app_user" javaName="ApplicationUser" label="システムユーザ" extends="party"> <column name="login_id" required="true" type="VARCHAR" size="30" label="ログインID"/> <column name="passwords" javaName="password" required="false" type="VARCHAR" size="30" label="パスワード"/> </table> </database> </databases>
タグ毎に説明しますね。
databases
ルートです。特に何も書かなくてOK。
database
データベースに該当するタグです。
name
名前です。
column
name
名前です。
required
必須項目かどうかを指定できます。
size
カラムのサイズをしてします。
label
表示名*2です。
primaryKey
カラムが主キーであるかどうかを指定します。
fk
外部キーとして参照するカラムを指定します。
他にもテーブルの要素として、