• The question definitely has layers to it as Sean alluded to. They were hoping to learn various things about you from it.

    I would have picked apart and addressed each part of the acronym.

    For A: Unlike Oracle, in SQL Server if you want each statement to implicitly start a new transaction then you must SET IMPLICIT_TRANSACTIONS ON. The default in SQL Server for "implicit transactions" is actually OFF, i.e. "autocommit mode", meaning if you want to start a transaction you must issue a BEGIN TRAN to start it. All statements are still atomic (the A in ACID) regardless of the setting meaning they either succeed or fail completely. An example would be if you issue an UPDATE statement to set all values of a TINYINT column to itself plus 1 and one of the rows had a value of 255 the entire UPDATE would fail, i.e. no rows would be updated.

    For I: Megistal nailed it.

    For C & D: You could check the results of the query from different sessions, and multiple times to make sure the same results were returned, which you mentioned.

    There are no special teachers of virtue, because virtue is taught by the whole community.
    --Plato