A database is a repository of information managed by a database engine which ensures integrity of data and fast access to the data.
A very common implementation of a database is a Relational Database Management System (RDBM). To users, the information in a database can be accessed by using Structured Query Language (SQL) a database language common to most databases. However, SQL only provides commands to access and manipulate the data in the database.
Well database development is much the same – to the ill informed it looks pretty straightforward, but once you get more involved you become aware of the specific complications of database development: