我正在尝试一个简单的测试,所以我有一个简单的存储过程。它从表中选择行
CREATE PROCEDURE [dbo].[Test_SQL_Connect]
as
BEGIN
SET NOCOUNT ON
select * from [dbo].[Test_Sqlconnector]
END
当我运行exec [dbo]。[Test_SQL_Connect] ..输出
TagName TagValue Timestamp TagStatus
tag1 value1 2017-01-31 19:09:43.7570000 1
在Java中,我有以下代码(之前已创建连接)
SQLServerCallableStatement cStatement =
(SQLServerCallableStatement)connection.prepareCall("{call dbo.Test_SQL_Connect}");
cStatement.execute();
执行cStatement.getUpdateCount()= -1。
后的值有人知道为什么updatecount为-1,即使返回了1条记录吗?
答案 0 :(得分:0)
以更新计数的形式检索当前结果; 如果结果是a ResultSet对象或没有更多结果, -1返回。 每个结果只应调用一次此方法。
另请查看PreparedStatement.execute()的javadoc。