Différence :
Lecture non répétable : Dans les mêmes conditions, la valeur des données lues changera lorsque nous les lirons à nouveau. .
Lecture fantôme : dans les mêmes conditions, le nombre d'enregistrements lus pour la première et la deuxième fois est différent.
Analyse détaillée :
1. Lecture non répétable
Dans les mêmes conditions, la valeur des données lues sera la même lorsque nous relisez-le. Quelque chose a changé.
Exemple :
Dans la transaction 1, A lit son salaire comme étant de 1000, mais l'opération de la transaction 1 n'est pas terminée à ce moment-là, et il y a une autre lecture identique plus tard.
con1 = getConnection(); select salary from employee where employeeName ="A";
Dans la transaction 2, le personnel financier a modifié le salaire de A à 2000 et a soumis la transaction.
con2 = getConnection(); update employee set salary = 2000 where employeeName = "A"; con2.commit();
Dans la transaction 1, lorsque A relit son salaire, le salaire devient 2000.
select salary from employee where employeeName ="A";
Les résultats de deux lectures dans une transaction sont incohérents, ce qui entraîne des lectures non répétables.
2. Lecture fantôme
Dans les mêmes conditions, le nombre d'enregistrements lus pour la première et la deuxième fois est différent.
Exemple :
Il y a actuellement 5 employés avec un salaire de 1 000.
Transaction 1, lisez tous les employés avec un salaire de 1 000 et lisez un total de 10 enregistrements.
con1 = getConnection(); Select * from employee where salary =1000;
À ce moment-là, une autre transaction a inséré un enregistrement d'employé dans la table des employés, et le salaire était également de 1 000
con2 = getConnection(); Insert into employee(employeeName,salary) values("B",1000); con2.commit();
La transaction 1 a lu à nouveau tous les employés avec un salaire de 1 000, et un. au total, 6 enregistrements ont été lus. Record, ce qui crée une lecture fantôme.
//con1 select * from employee where salary =1000;
Tutoriel recommandé : Tutoriel mysql
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!