`

mybatis~sql语句在表中插入数据获取当前添加数据的id

sql 
阅读更多

serversql数据库

一,在Mybatis Mapper文件中添加属性“useGeneratedKeys”和“keyProperty”,其中keyProperty是Java对象的属性名,而不是表格的字段名

<insert id="insert" parameterType="实体名"  useGeneratedKeys="true" keyProperty="id">    
        insert into system(name) values(#{name})    
</insert>  

二,在控制器中

       通过实体名.id就得出到新增当前一行数据时的id

 

oracle数据库

一,<insert id="insertAppReturnOrder"
parameterType="com.shaphar.erp.mobile.common.model.shapharDbModel.InsertAppReturnOrderEntity">
    <selectKey resultType="java.lang.Integer" keyProperty="sid" order="BEFORE">
        SELECT seq_t_order_return.nextval as sid FROM dual
    </selectKey>
    insert into t_order_ret....
</insert>
二,在Java代码中
ordersTempMapDao.insertAppReturnOrder(entity);
int sid = entity.getSid();
分享到:
评论

相关推荐

    详解MyBatis直接执行SQL查询及数据批量插入

    在本文中,我们将深入探讨如何使用MyBatis直接执行SQL查询以及如何进行数据的批量插入。 **一、直接执行SQL查询** 在MyBatis中,你可以通过Mapper接口和XML配置文件来直接执行自定义的SQL查询。下面是一个简单的...

    mybatis直接执行sql语句后续之一

    在IT行业中,MyBatis是一个广泛使用的持久层框架,它允许开发者直接编写SQL语句,提供了灵活的数据访问和映射机制。这篇博客“mybatis直接执行sql语句后续之一”可能探讨了如何在MyBatis中高效且有效地执行SQL操作。...

    MyBatis 3 _ SQL 语句构建器1

    在 `selectPersonLike()` 方法中,如果参数 `id`, `firstName`, `lastName` 不为 null,则相应的 WHERE 条件会被添加到 SQL 语句中。这里需要注意的是,因为匿名内部类需要访问外部的局部变量,所以这些参数必须被...

    mybatis动态插入sql语句的编写(csdn)————程序.pdf

    在MyBatis中,动态SQL语句的编写是解决数据操作灵活性问题的关键。尤其是在插入数据时,如果某些字段不需要赋值或无法立即提供值,这时就需要利用MyBatis的动态SQL功能来实现。动态SQL允许我们在运行时根据条件构建...

    MyBatis动态拼接SQL

    MyBatis是一款强大的Java持久层框架,它允许开发者将SQL语句直接写在XML映射文件或注解中,提供了灵活的数据库交互方式。在某些场景下,我们可能需要根据业务逻辑动态地拼接SQL语句,以实现更复杂的查询需求。这就是...

    MyBatis动态SQL,MyBatis批量插入(Oracle数据库)[收集].pdf

    MyBatis还提供了批量插入的功能,能够批量地将数据插入到数据库中。这种功能可以大大提高数据插入的效率。 例如,以下是一个使用批量插入的示例: ```xml &lt;insert id="batchInsert" parameterType="list"&gt; INSERT...

    mybatis动态创建数据库表

    在“mybatis动态创建数据库表”这个主题中,我们将深入探讨如何利用MyBatis实现数据库表的动态创建、数据插入以及数据修改。 一、动态创建数据库表 MyBatis本身并不直接支持动态创建数据库表,但可以通过结合Spring...

    mybatis之动态SQL

    1. `&lt;if&gt;` 标签:用于条件判断,如果指定的条件为真,则包含的 SQL 片段会被插入到最终的 SQL 语句中。例如,当查询特定用户时,可以根据用户 ID 是否为空来决定是否添加 WHERE 子句。 ```xml &lt;if test="id != null...

    Java实现mybatis批量插入数据到Oracle

    在Java开发中,MyBatis是一个非常流行的持久层框架,它简化了数据库操作,使得开发者可以更加专注于SQL语句的编写。本篇文章将详细介绍如何利用Java和MyBatis实现批量插入数据到Oracle数据库中。 首先,我们需要...

    MybatisPlus中插入数据获取主键值示例代码

    在这个例子中,`userMapper`是基于`User`实体的`BaseMapper`实例,`insert`方法会执行SQL插入语句并将数据保存到数据库中。 接下来,我们讨论如何获取插入操作后的主键值。MybatisPlus为自增主键提供了自动获取主...

    mybatis获取自增ID

    在MyBatis中,可以通过在`&lt;insert&gt;`标签中添加`useGeneratedKeys="true"`和`keyProperty`属性来自动获取并填充插入语句后返回的自增ID值。 **示例代码:** ```xml &lt;insert id="insert" parameterType=...

    MyBatis动态SQL是一种强大的特性,它允许我们在SQL语句中根据条件动态地添加或删除某些部分,从而实现更加灵活和高效的数据

    - **SQL注入防范**:虽然MyBatis的动态SQL标签能有效减少SQL注入的风险,但在处理用户输入时仍需谨慎,避免直接将未经验证的数据插入SQL语句中。 - **性能考虑**:虽然动态SQL可以极大地提高代码的灵活性,但过多的...

    mybatis自动生成语句XML版本

    在XML映射文件中,MBG会为每个数据库表生成插入(insert)、更新(update)、删除(delete)和查询(select)等基本操作的SQL语句。这些语句可以通过Mapper接口在业务逻辑中调用,大大简化了数据库操作。 总的来说...

    MyBatis动态SQL是一项强大的特性,它允许我们在编写SQL语句时根据条件动态地添加或删除某些部分,从而实现更加灵活和高效的

    MyBatis动态SQL是一项强大的特性,它允许开发者在编写SQL语句时根据条件动态地添加或删除某些部分,从而实现更加灵活和高效的数据库操作。这项技术在应对复杂多变的业务需求时尤为重要,能够极大地提高SQL语句的复用...

    mybatis动态sqlmybatis动态sqlmybatis动态sql

    此例中,假设`list`是一个整型数组或列表,那么这个SQL语句将会生成一个包含所有ID的IN子句。 #### 三、总结 动态SQL是MyBatis的一个强大特性,它极大地提高了SQL语句的灵活性和可维护性。通过上述介绍的各种标签...

Global site tag (gtag.js) - Google Analytics