Write for Us
Let’s take a look at the following code:
Here are the results after it is run:(1 row(s) affected)(1 row(s) affected)Transaction count is :1(1 row(s) affected)(1 row(s) affected)Transaction count is :2Msg 547, Level 16, State 0, Line 1INSERT statement conflicted with CHECK constraint 'stud_ck'. The conflict occurred in database 'AdventureWorks', table 'student', column 'marks'.The statement has been terminated.(1 row(s) affected)Error is 547Transaction count is :3Transaction count is :2Transaction count is :1Transaction count is :0From the above output you can observe that the value of @@trancount is increased with every BEGIN TRANSACTION, and decreased with every COMMIT TRANSACTION.
The last COMMIT TRANSACTION sets the value of @@trancount to 0, specifying the successful execution of the script.As we have discussed about the different ways of error handling in SQL Server 2000, we can observe that this job is tedious in SQL Server 2000 as for every statement a local value is to be stored, which decreases the clarity in the code and increases the complexity and even the size of the code.