jsp jstl sql查询标记?

vddsk6oq  于 2021-06-20  发布在  Mysql
关注(0)|答案(1)|浏览(472)

在jstl中使用“set@”任何东西都有问题。有什么诀窍可以让它发挥作用吗?

  1. <sql:query var="weektots" dataSource="jdbc/x" >
  2. SET @tot:=0;
  3. SELECT
  4. (@tot := @tot + 5) AS rt
  5. <sql:query>

其他不起作用的尝试:

  1. <sql:transaction dataSource="jdbc/x">
  2. <sql:query var="weektots" >
  3. SET @tot:=0;
  4. <sql:query>
  5. <sql:query var="weektots" dataSource="jdbc/x" >
  6. SELECT
  7. (@tot := @tot + 5) AS rt
  8. <sql:query>
  9. </sql:transaction>

  1. <c:set var="tot" value="0" />
  2. <sql:query var="weektots" dataSource="jdbc/x">
  3. SELECT
  4. (${tot} := ${tot} + 5) AS rt
  5. <sql:query>

有办法解决这个问题吗?

hgncfbus

hgncfbus1#

最终在jstl中创建了一个存储过程来执行这个操作。

  1. DELIMITER $$
  2. CREATE PROCEDURE w10rt()
  3. BEGIN
  4. SET @tot:=0;
  5. SELECT
  6. (@tot := @tot + 5) AS rt
  7. END $$
  8. DELIMITER ;

在jsp中使用“callw10rt”正确获取结果。

  1. Call w10rt

相关问题