En esencia, la idea es obtnener el máximo que haya:
   Y luego usarlo para bloquearla:  
El otro caso requiere que el objeto conexión y el de transacción sean globales, supongamos     
Código vb:
Ver original- Friend oCnx as MysqlConnection 
- Friend oTrans as MysqlTransaction 
luego, una vez creada y abierta la conexión haces:   
Y después, según el caso la confirmas o la cancelas.   
Código vb:
Ver original- If Convert.ToBoolean(oComM.ExecuteNonQuery()) Then 
-     oTrans.Commit() 
- Else 
-     oTrans.Rollback() 
- End If