[Jiemamy-users:14] Re: 自動インクリメントについて

Back to archive index

Shin Takeuchi s.tak****@leiha*****
2009年 12月 22日 (火) 03:04:21 JST


都元さん

お返事ありがとうございます。
竹内です。

> 下記が、最新(未リリース)のソースですが、AUTO_INCREMENTの出力処理が書かれています。
> また、0.2.0のリリースタグも確認しましたが、該当部分に修正の跡はありませんでした。

確かに記述がありました。
失礼致しました。
#TABLE側の戦略はあまり見ていなくて
#COLUMN側ばかり見ていました。。。


恐らくはv.0.1から続けてv.0.2に上げて使っているのですが
これが原因という可能性が高いですね。
#互換性が無いと思っていたのですが
#features/pluginsを入れ替えてもjerファイルが開いたので
#大丈夫なのかな?と思っていました。


今のプロジェクト的にちょっとER情報をそのままはお送り出来ないので
AUTO_INCREMENT部分の抜粋をお送り差し上げます。


<?xml version="1.0" encoding="UTF-8"?>
<jp.xet.jiemamy.core.model.RootModel>
  <databaseModels>
    <jp.xet.jiemamy.core.model.DatabaseModel>
      <rdbmsName>jp.xet.jiemamy.dialect.impl.MysqlDialect</rdbmsName>
      <beginScript></beginScript>
      <endScript></endScript>
      <description></description>
      <domains/>
      <nodes>
        <jp.xet.jiemamy.core.model.entity.TableModel>
          <columns>
            <jp.xet.jiemamy.core.model.definition.ColumnDefinitionModel>
              <name>HOGE_ID</name>
              <logicalName>ホゲID</logicalName>
              <dataType
class="jp.xet.jiemamy.core.model.definition.type.JiemamyType">INTEGER</dataType>
              <size></size>
              <defaultValue></defaultValue>
              <constraints>
                <string>not_null</string>
                <string>primary_key</string>
              </constraints>
              <check>
                <name></name>
                <definition></definition>
                <id>219363262585611467</id>
              </check>
              <options>
                <entry>
                  <string>AUTO_INCREMENT</string>
                  <string>true</string>
                </entry>
                <entry>
                  <string>ZEROFILL</string>
                  <string>false</string>
                </entry>
                <entry>
                  <string>UNSIGNED</string>
                  <string>false</string>
                </entry>
              </options>
              <description></description>
              <assignedTable>
                <columns reference="../../.."/>
                <indexes/>
                <checks/>
                <records/>
                <options>
                  <entry>
                    <string>ENGINE</string>
                    <string></string>
                  </entry>
                </options>
                <name>HOGE</name>
: 以下続く


やはりフォーマットの問題でしょうか?
#その場合は新規ERを書き直しでしょうか?


よろしくお願い致します。



2009/12/21 Daisuke Miyamoto <dai.0****@gmail*****>:
> 竹内様
>
> Jiemamyの都元です。
>
> AUTO_INCREMENTが出力されない件について、調査してみました。
>
> 下記が、最新(未リリース)のソースですが、AUTO_INCREMENTの出力処理が書かれています。
>
> trunk
> http://sourceforge.jp/projects/jiemamy/svn/view/hermes/jiemamy-dialect-mysql/trunk/src/main/java/org/jiemamy/dialect/mysql/MySqlEmitter.java?view=markup&root=jiemamy
> (AUTO_INCREMENTで検索すると、あります)
>
> また、0.2.0のリリースタグも確認しましたが、該当部分に修正の跡はありませんでした。
>
> tags/release/0.2.0
> http://sourceforge.jp/projects/jiemamy/svn/view/artemis/tags/release/0.2.0/jiemamy-dialect-mysql/src/main/java/org/jiemamy/dialect/mysql/MySqlEmitter.java?view=markup&root=jiemamy
>
> ちなみに、AUTO_INCREMENT を出力しているかどうかのテストも実施しています。
>
> http://sourceforge.jp/projects/jiemamy/svn/view/artemis/tags/release/0.2.0/jiemamy-dialect-mysql/src/test/java/org/jiemamy/dialect/mysql/MySqlEmitterTest.java?view=markup&revision=3360&root=jiemamy
>
> なので「出力ロジックの書き忘れ」ではないと思われます。
> 考えられるのは「別の部分のバグ」か「データが適切に作成できていない」のだと思います。
> ただ「データが適切に作成できていない」のは、エディタ側の不具合である可能性もあります。
>
> 引き続き調査してみたいので、よろしければ「AUTO_INCREMENTが出力されない
> データファイル」をご提供いただけないでしょうか?
>
> ちなみに、当方で v0.2.0 を使用して、添付の test.jer のSQLエクスポートを
> Eclipseのモデルエディタからエクスポート(コンテキストメニューから「エクスポート」>
> 「SQL Exporter」)してみましたところ、以下のように、AUTO_INCREMENT 付きの
> SQLが出力されました。
>
>>>>
> CREATE TABLE TABLE_1(COLUMN_1 INTEGER AUTO_INCREMENT);
> <<<
>
>
> 最後に、操作方法の確認を。
> 「エディタのUIから AUTO_INCREMENT を指定する方法」ですが、
> 添付の Jiemamy AUTO_INCREMENT.png に示した通り、「自動採番」に
> チェックを入れるのですが、操作に問題はありませんでしょうか?
>
> 以上、宜しくお願いいたします。
>
>
> P.S.
> 遠い記憶で、すこし曖昧なのですが、v0.0.x系、v0.1.x系では AUTO_INCREMENT の出力処理が
> 漏れていたかなー、と思っています。過去のバージョンをご利用でしたら、v0.2.0 への
> バージョンアップをお願いいたします。(データファイルの互換性がないので申し訳ないのですが…)
>
> ----
> email: dai.0****@gmail*****
> http://jiemamy.org/
>
>
>
>
> 2009年12月21日18:55 Shin Takeuchi <s.tak****@leiha*****>:
>> はじめまして。
>> 竹内(stakeuchi)と申します。
>>
>> 去年末よりJiemamyを使っているのですが
>> MySQLで自動インクリメントオプションをチェックしても
>> 「AUTO_INCREMENT」がDDLに出力されず
>> Ver.0.2でも特に盛り込まれていないようだったので
>> 何か理由があるのかな?と思って
>> 先ほどソースを拝見させて頂きました。
>>
>> EmitterやDialectまわりを少し拝見した感じですと
>> ソース上で自動インクリメントにチェックがあれば…という記述が見当たらず
>> Keywordクラスにも「AUTO_INCREMENT」文字列が存在しないようなので
>> もしかしたらこれは実装予定が無いのかも?と思い
>> メールさせて頂きました。
>>
>>
>> 実際のところここ以外ではERツールとしては現状満足していて
>> #とは言ってもデータ投入部分は0.1で日本語が上手く使えなかったので
>> #使っていないのですが。。
>> ここさえ対応して頂けたら
>> DDL出力後にDDLを手で編集するという残念な工程を経ず
>> 非常に素敵だなぁと思っています。
>>
>>
>> なので、もし実装予定がある
>> 若しくは既に実装されていて、私が上手く使えていない等
>> この問題の解決の糸口となる情報が御座いましたら
>> 教えていただきたいと思っております。
>>
>>
>> よろしくお願い致します。
>>
>>
>> --
>> ―Lei Hau'oli Co.,Ltd.―――――――――――
>>
>>  竹内 真(TAKEUCHI SHIN)
>>  Mail: s.tak****@leiha*****
>>
>>  株式会社Lei Hau'oli
>>  〒150-0001 東京都渋谷区神宮前4丁目18番6号
>>  Tel: 03-5775-0315 Fax: 03-5775-0314
>>
>> _______________________________________________
>> Jiemamy-users mailing list
>> Jiema****@lists*****
>> http://lists.sourceforge.jp/mailman/listinfo/jiemamy-users
>>
>
> _______________________________________________
> Jiemamy-users mailing list
> Jiema****@lists*****
> http://lists.sourceforge.jp/mailman/listinfo/jiemamy-users
>
>



-- 
―Lei Hau'oli Co.,Ltd.―――――――――――

 竹内 真(TAKEUCHI SHIN)
 Tel: 080-3300-9888
 Mail: s.tak****@leiha*****

 株式会社Lei Hau'oli
 〒150-0001 東京都渋谷区神宮前4丁目18番6号
 Tel: 03-5775-0315 Fax: 03-5775-0314




Jiemamy-users メーリングリストの案内
Back to archive index