-
There is more than one user who needs to access the data at the same time.
-
There is at least a moderate amount of data. For example, we may need to maintain information about a few hundred customers.
-
There are relationships between the stored data items. For example, customers may have any number of related purchase orders.
-
There is more than one kind of data record. For example, there might be information about customers, orders, inventory, and other data in an online store.
-
There are constraints that must be rigidly enforced on the data, such as field lengths, field types, uniqueness of customer numbers, and so on.
-
New or consolidated information must be produced from basic, related information; that is, the data must be queried to produce reports or results.
-
There is a large amount of data that must be searched quickly.
-
Security is important. There is a need to enforce rules as to who can access the data.
-
Adding, deleting, or modifying data is a complex process.
Examples of when not to use a DBMS
There are some situations where a relational DBMS is probably unnecessary or unsuitable. Here are some examples:
-
There is one type of data item, and the data isn't searched. For example, if a log entry is written when a user logs in and logs out, appending the entry to the end of a simple text file may be sufficient.
-
The data-management task is trivial. In this case, the data might be coded into a web script in the middle tier, rather than adding the overhead of a database access each time the data is needed.
-
The data requires complex analysis. For analysis, a spreadsheet package or statistical software may be more appropriate.