MyBatis 3手册 MyBatis 3 动态SQL-多数据库支持

2024-02-25 开发教程 MyBatis 3手册 匿名 4

多数据库支持

如果配置了 ​databaseIdProvider​,你就可以在动态代码中使用名为 “​_databaseId​” 的变量来为不同的数据库构建特定的语句。比如下面的例子:

<insert id="insert">
<selectKey keyProperty="id" resultType="int" order="BEFORE">
<if test="_databaseId == 'oracle'">
select seq_users.nextval from dual
</if>
<if test="_databaseId == 'db2'">
select nextval for seq_users from sysibm.sysdummy1"
</if>
</selectKey>
insert into users values (#{id}, #{name})
</insert>