I have this code with exception handling (three identical BEGIN-END blocks to reproduce the bug):
BEGIN DECLARE err_tablenotfound EXCEPTION FOR SQLSTATE '42W33'; DECLARE err_invalidstatement EXCEPTION FOR SQLSTATE '07W02'; DELETE FROM #tmp_foo; EXCEPTION WHEN err_tablenotfound THEN message 'Table not found error' to client; WHEN err_invalidstatement THEN message 'Invalid statement error' to client; WHEN OTHERS THEN message 'Another error' to client; RESIGNAL; END; BEGIN DECLARE err_tablenotfound EXCEPTION FOR SQLSTATE '42W33'; DECLARE err_invalidstatement EXCEPTION FOR SQLSTATE '07W02'; DELETE FROM #tmp_foo; EXCEPTION WHEN err_tablenotfound THEN message 'Table not found error' to client; WHEN err_invalidstatement THEN message 'Invalid statement error' to client; WHEN OTHERS THEN message 'Another error' to client; RESIGNAL; END; BEGIN DECLARE err_tablenotfound EXCEPTION FOR SQLSTATE '42W33'; DECLARE err_invalidstatement EXCEPTION FOR SQLSTATE '07W02'; DELETE FROM #tmp_foo; EXCEPTION WHEN err_tablenotfound THEN message 'Table not found error' to client; WHEN err_invalidstatement THEN message 'Invalid statement error' to client; WHEN OTHERS THEN message 'Another error' to client; RESIGNAL; END;I run it in dbisql. My results:
Table not found error Execution time: 0.008 seconds Table not found error Execution time: 0.002 seconds Invalid statement error Execution time: 0.001 secondsI. e. the 3rd block gives me unexpected results.
dbisqlc works as expected.
Can anyone repeat this behavior?
Tried all these client and server versions of SA: 11.0.1.3113, 12.0.1.4086, 16.0.0.1824.
Edited: similar problem exists in events, see my own answer below.
Request clarification before answering.
Might be a DBISQL issue - a test with dbisqlc on 12.0.1.4085 returns the expected "Table not found" error for all repetitions.
Good ol' times...
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
| User | Count |
|---|---|
| 5 | |
| 4 | |
| 4 | |
| 3 | |
| 2 | |
| 2 | |
| 2 | |
| 2 | |
| 2 | |
| 2 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.