DDL
最終更新日: 2020年3月14日
R8 | R9
Wagby はモデル定義から create table 文、drop table 文といった DDL を自動生成します。これは Hibernate の機能を用いています。具体的には Hibernate マッピングファイル (.hbm.xml) から生成されるものです。
DDL の項目の並びは、モデル定義の項目順ではありません。Hibernate マッピングファイルの記載順となります。
自動生成されたDDLファイルは以下のフォルダに保存されています。
"drop constraint FKXXXX" の、FKXXXXX に相当する部分は Hibernate が自動生成しています。Wagby では特に制御していません。
検索条件に対応したインデックス指定は、次のファイルで確認できます。
テキストエディタでファイルの内容を確認することができます。次の DDL が含まれています。
Wagby が生成する DDL の文字エンコードは、Wagby Designer を動作させている OS に依存します。
例えば Windows OS 環境では Shift JIS になります。そのためテーブル名やカラム名に日本語を指定するとエラーになります。
wagbydesigner/bin/setenv.bat に下記の行を追加することで、回避できます。DDLがUTF-8で出力されるようになります。
ただし、この設定を行うと、Tomcatのコンソール出力が文字化けします。
DDLの作成ルール
DDLの場所
wagbydesigner/webapps/wagbydesigner/WEB-INF/env/work/dbschema/createddl/
制約に関する命名
インデックス
wagbyapp/webapps/wagby/WEB-INF/export/conf/initdb.xml
CREATE INDEX "jfcidx_ModelID_ModelitemName" ON "ModelID"
文字エンコード
回避策
set CATALINA_OPTS=%CATALINA_OPTS% -Dfile.encoding=UTF-8