Storing records on a filesystem as separate files might be simple but does have several drawbacks:
You have to define your own interface for accessing these files and parsing their contents. This is much more serious than it may sound because it compels you to develop and test a lot of specific functionality that you would otherwise get more or less for free from an existing library
Accessing single files is much slower than selecting records from a table in a database. That might be workable as long as you know which record you want (as is the case in our tasklist application) but it certainly isn't workable when you want to select records based on the value of some attribute. This would necessitate opening each and every file and checking whether some attribute matches your criteria. On a data collection of hundreds of items or more, this would be prohibitively slow
Also, it is difficult to implement transactions. If we want to guarantee...