Jeg vil mene, at baseret på dine svar på mine kommentarer, så skal du virkelig ikke bekymre dig om manuelt at håndtere bordlåse. InnoDB understøtter låsning på rækkeniveau, og med autocommit aktiveret (som det er som standard) bliver alle individuelle forespørgsler faktisk håndteret på en transaktionsmæssig måde.
Hvis du nu har flere SQL-forespørgsler, der skal håndteres som en enkelt transaktion (dvs. opdater en tabel, og opdater derefter en anden tabel - enten begge lykkes eller begge bliver rullet tilbage), så skal du specifikt starte en transaktion og enten begå den eller rulle det tilbage, efter at de foreløbige forespørgsler er blevet udført.
Du kan også bruge SET TRANSACTION
erklæring, hvis du har brug for at ændre transaktionsisolationsniveauet (det er som standard 'REPEATABLE READ1').
For mere information se MySQL-dokumentation