Mysql
 sql >> Base de données >  >> RDS >> Mysql

Délai d'attente de verrouillage dépassé ; essayez de redémarrer la transaction en utilisant JDBC

Modifiez votre code et réorganisez les exécutions comme suit. Cela devrait fonctionner correctement :

Statement statement = connection.createStatement();
statement.execute("insert into student values (3,'kamal')");
connection.commit();

Statement statement1 = connection1.createStatement();
statement1.execute("delete from student where student_id = 3");
connection1.commit();

Le problème est que l'instruction d'insertion précédemment exécutée n'est pas encore validée et maintient le verrou sur la table lorsque vous essayez d'exécuter une nouvelle instruction de suppression créant une situation de blocage dans la base de données.