You can create a database under the assumption that SQL looks after all the problems of concurrency. It will probably work fine under test conditions: then, in the production environment, it starts losing data in subtle ways that defy repetition. It is every Database Developer's nightmare. In an excerpt from his acclaimed book, Alex Kuznetsov explains why it happens, and how you can avoid such problems.
Read more...