Mybatis:如何在mapper.xml中使用字符串concat ?
问题描述:
我正在用mybatis编写一个spring web项目。我有很多分解表像user_10,user_11,user_12Mybatis:如何在mapper.xml中使用字符串concat <include refid />?
在mapper.xml,我有
<sql id="TableNameBase">user_</sql>
<insert id="insert">
INSERT INTO <include refid="TableNameBase">#{id}
...
为〔实施例,如果我想要做的事,如:
insert into user_10 ...
我可以通过id = 10 但上述<include refid="TableNameBase">#{id}
似乎产生user_ 10
而不是预期user_10
我该怎么办?
答
看起来标签在前后添加空格。 你可以做的是定义一个参数表名是这样的:
<sql id="user_table">
user_#{id}
</sql>
然后你就可以在下面的例子中传递参数,就像使用它:
<insert id="insert">
INSERT INTO <include refid="user_table"/>
...
是问题中的空白'user_10'表名? – araknoid
它似乎是这样的。 – Lily