A flat file database is just like a csv file:
This is a file with data seperated by commas. The first column is name, then job, then phone number.
The main difference between that and say mysql is the way the file is read and the way it can link to other databases.
Basically, if you have simple data (like the above) then flat file is quick and easy.
You can use stuff like php or perl to read flat file data and they can quite easily handle thousands of records.
But if you are getting into more complex stuff such as relations e.g.
1,sleepless in seatle
3,debbie does springfield
Then flat files are too complicated and this stuff is ideal for something like mysql.
Spend some time googling out there for what you need. If you are sure that flat file is for you then you should find some old perl articles.
About 5 years ago I read some stuff on wdvl.com and how to use flat file database. The articles may still be there.