Read committed provides phantom reads. Why is that? What does that mean? Now I understand that because I understand how the how an implementation might work. And with that in mind, for me at least, thinking about how these things are actually implemented gave me a much much easier to then memorize. So you can see why they need different amounts of locking. You can seewhy they permit different levels of concurrency. You can start to get a feel for what amount of concurrence each of them permits and also what sort of anomalies each of them allow.