hibernate對映檔案生成資料庫指令碼過程,sequence 設定初始值 以及自定義增量問題

鴨脖發表於2013-04-16

如果你使用的資料庫是oracle資料庫 那末hibernate的主鍵生成策略一般是sequence

如下:

 <id unsaved-value="null" name="id" type="integer">
      <column name="ID">
        <comment>主鍵</comment>
      </column>
      <generator class="sequence">
        <param name="sequence">SEQ_SYS_FUNCTION_ID</param>
      </generator>
    </id>

 一般這樣寫實沒有問題的。但是在實際的專案當中我們的系統中往往有一部分初始資料,所以sequence的初始值不能從1開始增加,上面的的定義方法生成的squence指令碼為:create sequence SEQ_XXXX;

 但是我們實際需要的是 create sequence SEQ_XXXX start with 100 increment by 1;

 經過對原始碼的分析發現可以通過引數形式處理

   <param name="parameters">start with 100 increment by 2</param>

這樣即可以了。

僅此記錄

相關文章