Difference Between Flat File & Relational Database
number background image by kuhar from Fotolia.com
A flat file database stores data in a single table structure. A relational database uses multiple table structures, cross-referencing records between tables. Tables in both organise records in rows, with each column containing a single piece of data in the record.
Flat file databases were a natural development early in computing history. The relational database model was developed and implemented in the early 1970s, primarily by IBM.
Flat File Databases
Flat file databases are typically plain text files that store one record per line, with record fields delimited by whitespace or a delimiting character. Flat file databases can be read directly by a variety of software applications.
- A flat file database stores data in a single table structure.
- A relational database uses multiple table structures, cross-referencing records between tables.
In addition to the data tables, relational databases use "indexes" to quickly find records based on search criteria. Relational databases generally require a relational database management system (RDBMS) to manage and access the data.
Flat file databases are simple and portable, and typically can be used without requiring special software. Relational databases are faster, more efficient and more powerful than flat files. Most RDBMSs provide database access over networks.
Software originally based on a flat file database structure included FileMaker, Berkeley DB, and Borland Reflex. Popular modern relational database systems include Oracle, MySQL and PostgreSQL.
- In addition to the data tables, relational databases use "indexes" to quickly find records based on search criteria.
Deborah Lee Soltesz is a web developer who has been creating websites, promotional materials and information products since 1992. Soltesz has a Bachelor of Science in computer science and engineering. She worked in earth and space science research writing for scientific and general audiences for more than a decade.