HSQL 为啥在使用 GET DIAGNOTICS <variable> = ROW_COUNT 时出现错误

Posted

技术标签:

【中文标题】HSQL 为啥在使用 GET DIAGNOTICS <variable> = ROW_COUNT 时出现错误【英文标题】:HSQL why I get error when use GET DIAGNOTICS <variable> = ROW_COUNTHSQL 为什么在使用 GET DIAGNOTICS <variable> = ROW_COUNT 时出现错误 【发布时间】:2012-07-25 15:05:48 【问题描述】:

我想在存储过程中从 hsqldb 获取 rowcount 的值(就像其他 dbms 提供 @@rowcount),但我对通知我的异常感到困惑

意外令牌:GET,必需:END

谁能帮我解决这个问题?

【问题讨论】:

【参考方案1】:

此语法适用于最新的 HSQLDB 2.2.9 快照:

create procedure del_stuff(inout n int) modifies sql data
 begin atomic
 delete from t_temp where t_temp.i > n;
 get diagnostics n = row_count;
 end

【讨论】:

嗨 fredt,我知道确切的语法,但问题仍然存在!而我现在的版本是2.2.4,是这个版本的问题。我稍后会尝试 2.2.9 版本。 其实我想写一个程序把sybase存储过程转换成hsql存储过程,你觉得现实吗?我比较了这两个存储过程,似乎有很多不同。那您对这个问题有什么其他的建议吗,非常感谢! 此功能是新功能,2.2.4 版不支持。我没有任何其他建议。

以上是关于HSQL 为啥在使用 GET DIAGNOTICS <variable> = ROW_COUNT 时出现错误的主要内容,如果未能解决你的问题,请参考以下文章

为啥 Hibernate 将模式名称添加到 Hsql 函数?

为啥需要传统的 Hibernate?

HSQL 列名包含 #

在 HSQL 左外连接子句中使用 SUBSTR

HSQL可视化工具

HSQL 数据存储