0 0

mybatis 关于插入查询自动增长主键问题5

<insert id="addUserGameToDepot" parameterType="com.ssy.gameking.modules.develop.bean.UserDepotGame">
<selectKey resultType="int" keyProperty="user_game_id">
select last_insert_id()
</selectKey>
INSERT INTO gk_user_depot_game (gk_user_id , game_id , game_quality ,game_basis_price) VALUES
(#{gk_user_id},#{game_id},#{game_quality},#{game_basis_price})
</insert>


配置文件如上,返回值一直为 1   纳闷中!!!
 
2012年9月13日 12:08

3个答案 按时间排序 按投票排序

0 0

1. 对于支持AUTO_INCREMENT的数据库,使用如下写法更简单:

<insert id="insertAuthor" parameterType="domain.blog.Author" useGeneratedKeys="true" keyProperty="id">
  insert into Author (username,password,email,bio)
  values (#{username},#{password},#{email},#{bio})
</insert>


2. 对于你的这种写法,插入后尝试从UserDepotGame直接获取user_game_id属性值。

2012年9月13日 13:53
0 0

<insert id="Creative.insert" parameterType="Creative" useGeneratedKeys="true" keyProperty="id">

2012年9月13日 13:06
0 0

<selectKey resultClass="int" type="post" keyProperty="user_game_id" > 

        select LAST_INSERT_ID() as user_game_id 

</selectKey> 

2012年9月13日 12:22

相关推荐

    Mybatis 插入一条或批量插入 返回带有自增长主键记录的实例

    今天,我们将分享一个关于 Mybatis 插入一条或批量插入 返回带有自增长主键记录的实例。 Mybatis 插入一条或批量插入 在 Mybatis 中,要实现插入一条或批量插入,需要使用 `&lt;insert&gt;` element,并在其中使用 `...

    MyBatis在insert插入操作时返回主键ID的配置(推荐)

    因为 Oracle 不支持自增长主键,所以我们不能使用 `useGeneratedKeys` 属性。相反,我们需要使用 `&lt;selectKey&gt;` 元素来获取插入的主键 ID。 例如: ```xml SELECT SEQ_USER.NEXTVAL as userId from DUAL ...

    MyBatis获取插入记录的自增长字段值(ID)

    在MyBatis中,获取插入记录的自增长字段值是一个常见的问题,特别是在使用自动增长字段的数据库管理系统中。下面,我们将详细介绍MyBatis获取插入记录的自增长字段值的方法。 首先,我们需要在MyBatis的Mapper文件...

    MyBatis主键自动生成方法.pdf

    综上所述,MyBatis提供了灵活的方式来处理主键自动生成,无论是对支持自动增长的数据库,还是需要使用序列的数据库,都能进行有效的适配。通过正确配置`useGeneratedKeys`和`selectKey`元素,开发者可以轻松地在Java...

    mybatis 获取mysql插入记录的自增长字段值.pdf

    总之,通过MyBatis的`useGeneratedKeys`和`keyProperty`特性,我们可以方便地在插入记录后获取自增长字段的值,从而简化了数据库操作的复杂性,提高了代码的可读性和可维护性。在实际开发中,根据具体需求,还可以...

    MyBatis批量插入(insert)数据操作

    其中,`id`通常被设为自动增长字段,以便数据库自动生成唯一标识。 2. **结果映射(Result Map)**: 在`mapper.xml`文件中,定义了`resultMap`来指定字段与实体类属性的对应关系。这样MyBatis可以正确地将查询...

    mybatis-plus主键生成策略

    1. 数据库自增长序列:这是最常见的方式,由数据库自身保证唯一性和递增性,适用于单数据库环境。但缺点是不适用于分布式系统,且不同数据库的实现可能不同。 2. UUID:全局唯一,但无法保证顺序,占用空间较大,...

    MyBatis insert操作插入数据之后返回插入记录的id

    在MyBatis的insert元素中,我们可以设置keyProperty="id"用来指定要返回的主键id,而useGeneratedKeys="true"则用于获取自增长的ID。 在上面的示例中,我们可以看到insert元素中设置了keyProperty="id"和...

    mybatis.plus官方中文文档

    2. **主键自动生成策略**:MyBatis-Plus支持多种主键生成策略,包括Identity(自动增长主键)、雪花算法、序列等,可以根据不同的数据库类型选择合适的策略。 3. **条件构造器**:MyBatis-Plus的QueryWrapper和...

    Mybatis使用useGeneratedKeys获取自增主键的方法

    这个特性在处理像MySQL、SQL Server等支持自动增长字段的数据库时特别有用,可以避免进行额外的查询来获取新插入记录的主键。本文将深入探讨`useGeneratedKeys`的工作原理以及它在批量插入和`ON DUPLICATE KEY ...

    Mybatis-Plus练习案例

    主键自增是数据库表设计中常见的需求,Mybatis-Plus支持主键自动增长,无需手动设置,这在插入新记录时尤其方便。 自动填充是指在特定操作(如插入或更新)时,系统自动填充某些字段。Mybatis-Plus允许用户定义一些...

    mybatis获取自增ID

    在数据库操作中,经常需要插入数据到表中,而表中的主键字段通常是自增长的。当数据插入成功后,往往需要获取这个自增长的ID,以便于后续的业务处理或者关联其他表的数据。因此,在MyBatis中提供了一种机制来获取自...

    尚硅谷Mybatis视频教程11-20

    第17、18集则关注于自增主键的处理,17集展示了如何获取插入后自动生成的主键,通常在MySQL等支持自动增长主键的数据库中使用。而在18集中,针对Oracle数据库,讲解了如何利用序列来生成主键,这是Oracle数据库特有...

    Mybatis增强工具包(Mybatis plus) v3.5.3.2.zip

    提供了多种主键生成策略,包括 Identity(自动增长)、Sequence(序列)、雪花算法等,可以根据不同的数据库环境选择合适的策略。 7. **自定义全局配置**: 可以通过配置文件或注解来设定全局的配置,如逻辑删除...

    MyBatis Oracle 自增序列的实现方法

    本文将详细讲解如何在MyBatis中实现Oracle的自增序列,并配置MyBatis以支持Oracle的主键自增长。 首先,你需要在Oracle数据库中创建一个序列对象。例如,你可以创建一个名为`SEQ_TABLE`的序列: ```sql CREATE ...

    mybatis insert返回主键代码实例

    MyBatis 插入返回主键代码实例详解 MyBatis 是一个流行的持久层框架,它提供了多种方式来处理数据库操作。其中,插入数据并返回主键是一个非常常见的操作场景。本文将详细介绍 MyBatis 中插入返回主键代码实例的...

    利用Java的MyBatis框架获取MySQL中插入记录时的自增主键

    + "\n刚刚插入记录的主键自增长值为:" + spares.getId()); } ``` 此外,还有一种方法是使用`&lt;selectKey&gt;`标签。`&lt;selectKey&gt;`允许在插入语句之前或之后执行一个查询,以获取自增主键。例如: ```xml select ...

    mybatis_plus.zip

    6. **主键自增**:对于具有自动增长主键的表,MyBatis Plus可以自动处理主键生成问题。 7. **数据权限控制**:提供数据权限控制功能,根据用户角色,限制能查看或操作的数据范围。 在IDEA中配置MyBatis Plus插件的...

    mybatis plus 2.86

    4. **主键生成策略**:MyBatis Plus提供了多种主键生成策略,如Identity(自动增长)、Increment(自增)、 ASSIGN_ID(由数据库生成)等,可以根据不同的数据库类型选择合适的方式。 5. **数据权限控制**:可以...

    mybatis文档

    - MySQL:利用自增长特性,通过 SQL 语句 `SELECT LAST_INSERT_ID()` 获取最后插入行的 ID。 #### 7. 关联关系处理 - **处理方式**:支持多种关联查询方式,包括连接查询和两次查询方式。 - 一对多:使用连接...

Global site tag (gtag.js) - Google Analytics