You don't need to check the transaction status in your code, just create your transactions and the DB server will handle them.
It will kill your performance if you wait for each transaction to finish before starting a new one in your code.
There are things you should be aware of when using transactions like locked pages etc.
Read the following on transaction isolation levels :
http://msdn.microsoft.com/en-us/library/ms173763.aspx[
^]