We are working on handheld applications and use the following model to transmit data to and from the SQL server2000. The handheld application connects to a middle tier through the internet and seeks a connection to the database. THe middle tier written in VC++ uses ADO to execute a set of pre-stored SQL commands specific to the session. Data from the palm is stored into the temporary table and then stored into the main tables after processing. Each session has a transaction started explicitly. The problem is if the internet connection is down somewhere after a few statements, the rollback does not happen automatically. Is it right to expect rollback to occur or should we explicitly mention a rollback statement. Does SQL Server truncate the transaction log in these conditions or does it commit them to the database. Default ANSI setting is set off as web based applications require it to be that way.