mybatis插入操作时获取主键
2011-02-15 14:37
281 查看
插入操作
对于自增主键的表,插入可以不配置插入的主键列。否则是必须的。
获取主键
插入语句之前配置:主要是针对Sequence主键而言,插入前必须指定一个主键值给要插入的记录。Oracle、DB2亦如此,方法是在插入语句标签<insert....>之前配置上:
<insert id="AltName.insert" parameterType="AltName">
<selectKey resultType="long" keyProperty="id">
SELECT SEQ_TEST.NEXTVAL FROM DUAL
</selectKey>
insert into
altname(primaryName,alternateName,type)values(#{primaryName},#{alternateName},#{type})
</insert>
插入语句之后配置:蛀牙是针对自增主键的表而言,这类表在插入时不需要主键,而是在插入过程自动获取一个自增的主键。比如MySQL
<insert id="AltName.insert" parameterType="AltName">
<selectKey resultType="long" keyProperty="id">
SELECT LAST_INSERT_ID()
</selectKey>
insert into
altname(primaryName,alternateName,type)values(#{primaryName},#{alternateName},#{type})
</insert>
当然,是否需要配置<selectKey>根据情况,只要能保证记录有主键即可。一旦配置了<selectKey>,就可以在执行插入操作时获取到新增记录的主键。
注意:如果没有配置<selectKey>那么保存后的对象的主键依旧为null.
对于自增主键的表,插入可以不配置插入的主键列。否则是必须的。
获取主键
插入语句之前配置:主要是针对Sequence主键而言,插入前必须指定一个主键值给要插入的记录。Oracle、DB2亦如此,方法是在插入语句标签<insert....>之前配置上:
<insert id="AltName.insert" parameterType="AltName">
<selectKey resultType="long" keyProperty="id">
SELECT SEQ_TEST.NEXTVAL FROM DUAL
</selectKey>
insert into
altname(primaryName,alternateName,type)values(#{primaryName},#{alternateName},#{type})
</insert>
插入语句之后配置:蛀牙是针对自增主键的表而言,这类表在插入时不需要主键,而是在插入过程自动获取一个自增的主键。比如MySQL
<insert id="AltName.insert" parameterType="AltName">
<selectKey resultType="long" keyProperty="id">
SELECT LAST_INSERT_ID()
</selectKey>
insert into
altname(primaryName,alternateName,type)values(#{primaryName},#{alternateName},#{type})
</insert>
当然,是否需要配置<selectKey>根据情况,只要能保证记录有主键即可。一旦配置了<selectKey>,就可以在执行插入操作时获取到新增记录的主键。
注意:如果没有配置<selectKey>那么保存后的对象的主键依旧为null.
相关文章推荐
- Mybatis 插入操作时获取主键 (Oracle 触发器与SEQ)
- Mybatis 插入操作时获取主键
- mybatis获取mysql插入的自增主键配置方法
- Mybatis——<selectKey>生成主键/获取插入数据主键
- mybatis获取插入数据主键
- 【Mybatis】数据插入数据库时,获取自增主键
- MyBatis插入时候获取自增主键方法
- MyBatis插入时候获取自增主键方法
- MyBatis插入语句获取主键id
- MyBatis插入时候获取自增主键方法
- mybatis获取插入记录的主键
- 运用SSM+mysql框架,用mybatis插入一条数据获取自增主键的办法
- java获取使用mybatis刚插入数据的主键id
- mybatis插入一个对象后获取表中自增的主键Id并且传入到插入的的对象中,方便将对象中其他属性赋值给其他以前表主键Id作为非空字段的表
- MyBatis插入时候获取自增主键方法
- Mybatis获取刚刚插入的一条数据的主键值(插入时主键未制定数据库支持主键自增)
- MyBatis插入时候获取自增主键方法
- Mybatis + Mysql插入后获取主键id
- MyBatis插入时候获取自增主键方法
- Mybatis获取插入自增主键