在jstl中使用“ SET @”的任何内容都有问题。有使它起作用的技巧吗?
<sql:query var="weektots" dataSource="jdbc/x" >
SET @tot:=0;
SELECT
(@tot := @tot + 5) AS rt
<sql:query>
其他无效的尝试:
<sql:transaction dataSource="jdbc/x">
<sql:query var="weektots" >
SET @tot:=0;
<sql:query>
<sql:query var="weektots" dataSource="jdbc/x" >
SELECT
(@tot := @tot + 5) AS rt
<sql:query>
</sql:transaction>
和
<c:set var="tot" value="0" />
<sql:query var="weektots" dataSource="jdbc/x">
SELECT
(${tot} := ${tot} + 5) AS rt
<sql:query>
有什么方法可以做到这一点?
答案 0 :(得分:0)
最终创建了一个存储过程以在JSTL中执行此过程。
DELIMITER $$
CREATE PROCEDURE w10rt()
BEGIN
SET @tot:=0;
SELECT
(@tot := @tot + 5) AS rt
END $$
DELIMITER ;
在jsp中使用“调用w10rt”可以正确获得结果。
Call w10rt