mybatis3怎么在insert *** 作后返回被插入数据的主键ID

mybatis3怎么在insert *** 作后返回被插入数据的主键ID,第1张

private function loaderHandler(event:):void {

switch(eventtype) {

case EventCOMPLETE:

trace(_loaderdataresult);

break;

case EventOPEN:

trace("open: " + event);

break;

case ProgressEventPROGRESS:

trace("progress: " + event);

break;

案例:

方法一

<insert

id="add"

parameterType="EStudent"

useGeneratedKeys="true"

keyProperty="id">

insert

into

TStudent(name,

age)

values(#{name},

#{age})

</insert>

useGeneratedKeys="true"

:设置是否使用JDBC的getGenereatedKeys方法获取主键并赋值到keyProperty设置的领域模型属性中。

(适用于mysql、sqlserver数据库,oracle不能使用,使用selectkey子节点做)

keyProperty:赋值的对象的属性名称。

方法二

<insert

id="add"

parameterType="EStudent">

//

下面是SQLServer获取最近一次插入记录的主键值的方式

<selectKey

resultType="int"

keyProperty="id"

order="AFTER">

SELECT

LAST_INSERT_ID()

AS

id

</selectKey>

insert

into

TStudent(name,

age)

values(#{name},

#{age})

</insert>

mybatis使用insert、update标签中的useGeneratedKeys、keyProperty来获取主键返回值,useGeneratedKeys设置为true,keyProperty设置为主键对应实体类的属性值,如果是联合主键那么属性名用逗号隔开;insert时,返回的是新增记录的主键值、update时返回的时更新记录的主键值

同理,如果插入多条记录,只要设置了useGeneratedKeys、keyProperty同样可以获取主键;

1、指定主键生成策略为自动生成,useGeneratedKeys="true" 2、指定主键对应字段名,例如channel_id绑定为id字段,执行插入后,channel_id接受返回的自增键的值。

每次插入 *** 作完后SELECT LAST_INSERT_ID(); 就获取了

如果是pdo *** 作insert

$dbh_w->exec("insert");

$id=$dbh_w->lastInsertId();

就直接获取插入id了

以上就是关于mybatis3怎么在insert *** 作后返回被插入数据的主键ID全部的内容,包括:mybatis3怎么在insert *** 作后返回被插入数据的主键ID、通过mybatis添加数据记录时,如何返回主键、mybatis批量添加时怎么返回ID的 集合等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/9792963.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-02
下一篇2023-05-02

发表评论

登录后才能评论

评论列表(0条)

    保存