5.1.4.4. 标识字段和序列(Identity columns and Sequences)
对于内部支持标识字段的数据库(DB2,MySQL,Sybase,MS SQL),你可以使用identity
关键字生成。 对于内部支持序列的数据库(DB2,Oracle, PostgreSQL, Interbase, McKoi,SAP DB), 你可以使用sequence
风格的关键字生成。 这两种方式对于插入一个新的对象都需要两次SQL查询。
<id name="id" type="long" column="person_id">
<generator class="sequence">
<param name="sequence">person_id_sequence</param>
</generator>
</id>
<id name="id" type="long" column="person_id" unsaved-value="0">
<generator class="identity"/>
</id>
对于跨平台开发,native
策略会从identity
, sequence
和hilo
中进行选择,选择哪一个,这取决于底层数据库的支持能力。