BUG: DBPROCEDURE WITHOUT OUTPUT PARAMS
jlegeny <[email protected]> Thu, 11 Sep 2003 15:44:51 +0200
| Newsgroups | gmane.comp.db.sapdb.general |
|---|---|
| Message-ID | <[email protected]> |
Hello,
When I create db procedure without OUT parameter and I try to
update/insert some records within this dbprocedure, this one don't
return number of updated/inserted records.
For example:
CREATE TABLE test_table (
test_value VARCHAR(50)
)
CREATE DBPROCEDURE update_test_value (
IN in_old_test_value VARCHAR(50),
IN in_new_test_value VARCHAR(50)
)
AS
TRY
UPDATE test_table SET
test_value = :in_new_test_value
WHERE test_value = :in_old_test_value;
CATCH
IF $RC <> 0 THEN STOP ($RC, $ERRMSG);
This is the java code that call db procedure. There is expected
number of updated records in the variable iUpdateCount but allways 0 is
returned.
CallableStatement updateStatement = null;
int iUpdateCount = 0;
updateStatement = dbConnection.prepareCall(strUpdateCall);
updateStatement.setString(1, strOldValue);
updateStatement.setString(2, strNewValue);
// here is the bug in SAP DB, if there is called stored
procedure without
// output parameters, there is not returned number of updated
records
iUpdateCount = updateStatement.executeUpdate();
Db procedure returns correct number of updated records when I add
an OUT paramete into the db procedure.
Is this feature of the SAP DB procedures or bug?
Thanks for answer,
Julian