Avevo un secondo database aperto che mostrava dati errati><... questo metodo funziona. Si scopre che non avevo nemmeno bisogno di:
command.CommandText = "SET autocommit = 0";
command.executeNonQuery();
Quindi questo codice funziona per le transazioni.