200分,

fanciex 2004-08-04 09:59:46
其实很简单的一个问题:
<sql:query var="bugItems" dataSource="jdbc/RD">
SELECT * FROM taskInfo where BugNo=?
<sql:param value="${param.BugNo}" />
</sql:query>

我想实现当${param.BugNo}为空字串""时,传进去的是null,如何实现。
以前问过一次,没有解决.
尽量用EL来实现,thanks!

...全文
328 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
fanciex 2004-08-05
  • 打赏
  • 举报
回复
<c:if test="empty param.foreStartDate">
<c:set var="${param.foreStartDate}" value="${null}"/> --却不行,估计是<c:set不支持这种写法
</c:if>

如何将param.foreStartDate设为null?
liujiansxcd 2004-08-04
  • 打赏
  • 举报
回复
试试这样可以吗:
<sql:update var="updateTaskInfo" dataSource="jdbc/RD">
Update taskInfo set foreStartDate=? where BugNo=?
if(null!=param.foreStartDatel)
<sql:param value="${param.foreStartDate}"/>
else
<sql:param value=null/>
<sql:param value="${param.BugNo}"/>
</sql:update>
fanciex 2004-08-04
  • 打赏
  • 举报
回复
sorry,我举个update的例子好了:
<sql:update var="updateTaskInfo" dataSource="jdbc/RD">
Update taskInfo set foreStartDate=? where BugNo=?
<sql:param value="${param.foreStartDate}"/>
<sql:param value="${param.BugNo}"/>
</sql:update>
---
如何把foreStartDate设为null
icy_csdn 2004-08-04
  • 打赏
  • 举报
回复
这可能不行吧,条件为NULL时,判断可不能用where BugNo=NULL
而应该使用 WHERE (BugNo IS NULL)

SQL语句不一样,所以先判断一下。
tomwin 2004-08-04
  • 打赏
  • 举报
回复
大侠请看看这个问题
http://community.csdn.net/Expert/topic/3241/3241778.xml?temp=.4536859
pengpong 2004-08-04
  • 打赏
  • 举报
回复
up
fanciex 2004-08-04
  • 打赏
  • 举报
回复
sql传null已经成功了!,
<sql:param value="${null}"/>


<c:if test="empty param.foreStartDate">
<c:set var="${param.foreStartDate}" value="${null}"/> --却不行,估计是<c:set不支持这种写法
</c:if>

如何将param.foreStartDate设为null?
icy_csdn 2004-08-04
  • 打赏
  • 举报
回复
不好意思,按错键了,贴错了:)
icy_csdn 2004-08-04
  • 打赏
  • 举报
回复
<sql:update var="updateTaskInfo" dataSource="jdbc/RD">
Update taskInfo set foreStartDate=? where BugNo=?
<c:if test="empty param.foreStartDate">
${param.foreStartDate=null} --不行的
</c:if>



<sql:param value="${param.foreStartDate}"/>
<sql:param value="${param.BugNo}"/>
</sql:update>
alexlex 2004-08-04
  • 打赏
  • 举报
回复
我想实现当${param.BugNo}为空字串""时,传进去的是null,如何实现。

------------
我想是不可能實現的,因爲java裏面不能傳遞null值的,你傳其他類型進去,肯定會根據類型來判斷,字符串之類就加上',數字才不加,而你現在要求的令他產生 null 這樣一個沒有單引號的字符串,應該是不能實現的,除非有特殊的轉化,比如當字符串為"null"時就產生null而不是'null'

要不你你可以看看原碼,自己加一個:)
liujiansxcd 2004-08-04
  • 打赏
  • 举报
回复
你先把param.foreStartDate=null,然后再这样

<c:if test="empty param.foreStartDate">
${param.foreStartDate}
</c:if>

可以吗?
fanciex 2004-08-04
  • 打赏
  • 举报
回复
<sql:param value="${null}"/> 成功了!,但

如何将param.foreStartDate设为null?直接

<c:if test="empty param.foreStartDate">
${param.foreStartDate=null} --不行的
</c:if>
liujiansxcd 2004-08-04
  • 打赏
  • 举报
回复
给null加上引号试一试!
fanciex 2004-08-04
  • 打赏
  • 举报
回复
to liujiansxcd(hacker):
<sql:param value=null/>---编译都通不过的

81,114

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧