Traditioneel, database ontwerpers deelnemen aan de oprichting van een gegevensbank in drie fasen van het ontwerp: conceptuele, logische en fysieke. Deze fasen kunnen niet volgen elkaar sequentieel--ontwerpers wellicht opnieuw eerdere fasen tijdens latere fasen, bijvoorbeeld. Ontwerpers kunnen ook het weglaten van een of meer fasen voor eenvoudig databases. Wanneer goed gedaan, bevordert databaseontwerp efficiënt gegevens opslaan en ophalen.
Conceptontwerp
Conceptontwerp impliceert de oprichting van een conceptuele schema, of model, van de database. Dit model is onafhankelijk van alle fysieke overwegingen, met inbegrip van database managementsystemen, programmeertalen en hardwareplatformen. Niet-technische gebruikers moeten begrijpen het schema, dus het niet details bevatten moet van hoe de database moet worden uitgevoerd. Het is, echter gedetailleerd in termen van de aard, de structuur en de betekenis van de gegevens.
Entity-Relationship Model
In de conceptuele fase maakt database ontwerpers gewoonlijk wat bekend staat als een entiteit-relationship model, of een diagram, om te helpen met het visualiseren van de database. Het entiteit-relationship diagram geeft elke entiteit--ook wel bekend als een relatie of tabel--in de database--evenals de relaties tussen de entiteiten. In wezen, het entiteit-relationship diagram is eenvoudig genoeg om database ontwerpers om te leren en begrijpen van de basisbegrippen, maar die gedetailleerd genoeg zijn om te helpen bij de ontwikkeling van complexe toepassingen.
Logisch ontwerp
Het doel van logische ontwerp is het generieke, conceptuele schema omvormen tot een gegevensmodel specifiek voor een bepaalde database managementsysteem. Logisch ontwerp kan automatisch gedaan worden handmatig of - in sommige gevallen--, door het gebruik van computer-aided software engineering (CASE) tools van een conceptuele ontwerp. In beide gevallen is het eindresultaat een set van gegevens definitie taal opdrachten, die interactief gebruikt kunnen worden, of als onderdeel van een programma om de database te maken.
Fysieke ontwerp
Fysieke ontwerp is het proces fysiek het logisch datamodel te voeren in een database managementsysteem. Het gaat om specifieke bestandsstructuren in die voor het opslaan van de databasetabellen of relaties kiezen en ervoor te zorgen dat de betrekkingen kunnen worden betreden snel, efficiënt en veilig. Database ontwerpers wellicht na te denken over database toegangstijden voor veelgebruikte transacties, evenals het gemiddelde aantal transacties verwerkt per minuut en de hoeveelheid ruimte die de database in beslag neemt. Een index op bepaalde velden of kolommen, in een database kan toegangstijden verbeteren, maar het is aan de ontwerper van de database om te bepalen welke velden moeten worden geïndexeerd.