3
我在动态查询时遇到错误。这是我有查询:ibatis中的动态查询错误
<dynamic>
select * from Tbl_Member
WHERE
<isNotNull property="FirstName">
FIRST_NAME = #lastName#
</isNotNull>
<isNotNull prepend="and" property="lastName">
LAST_NAME = #lastName#
</isNotNull>
<isNotNull prepend="and" property="">
</isNotNull>
.
.
.
.
</dynamic>
如果属性FirstName
不为空,查询工作。但是,如果该属性为空,而其他左侧属性LastName
不为空,则会出现SQL错误。
因为在这种情况下的SQL语句变成如下:
select * from Tbl_Member WHERE AND LAST_NAME = ? ...
如何删除第一前缀AND
如果第一个属性变得Null
PS:
我也尝试过removeFirstPrepend="true"
<isNotNull prepend="and" property="lastName" removeFirstPrepend="true">
LAST_NAME = #lastName#
</isNotNull>
但不幸的是,它也不起作用。
谢谢您的回答。这是工作:) – AKZap