Local loConn as "ADODB.Connection" Local loCmd as "ADODB.Command" Local loRs as "ADODB.Recordset" Local lsString as String *** loConn = CreateObject("ADODB.Connection") loCmd = CreateObject("ADODB.Command") * with this COMENTED line the transaction work * loConn.ConnectionString = "Provider=SQLOLEDB.1;Persist Security Info=False;User ID=sa;Password=mypassword;Initial Catalog=mydatabase;Data Source=myserver" * with this ACTIVE line the DONT transaction work loConn.ConnectionString = "Driver={SQL Native Client};Server=myserver;Database=mydatabase;Uid=sa;Pwd=mypassword;" loConn.Open() loCmd.ActiveConnection = loConn loCmd.CommandText = "BEGIN TRANSACTION mydatabase" loRs = loCmd.Execute() loCmd.CommandText = "Update mytable set myfield = 45 where mykey = 289880" loRs = loCmd.Execute() loCmd.CommandText = "ROLLBACK TRANSACTION mydatabase" loRs = loCmd.Execute()