Las funciones de un SGBD (Sistema de Gestión de Bases de Datos) son:
- Almacenar datos de los usuarios de manera sencilla y transparente al usuario, a pesar de la complejidad que haya internamente en el sistema.
- Garantizar la integridad, eliminando inconsistencias a partir de restricciones y reglas programadas previamente.
- Gestión de usuarios y roles que permitan sólo acceder a la información a quienes únicamente se les haya dado permisos según el rol asignado.
- Ofrecer un lenguaje de programación para interactuar con la base de datos, para realizar las operaciones comunes.
- Proporcionar un diccionario de datos / metadatos que contenga información del esquema de la base de datos, relaciones, usuarios, permisos, campos, etc.
- Resolver problemas de accesos múltiples mediante bloqueos y transacciones.
- Proporcionar utilidades de backup, estadísticas, monitorización, etc. en general herramientas que nos permitan comprobar el funcionamiento de la base de datos y detectar posibles problemas como pueden ser consultas mal planteadas, accesos indebidos, etc.
- Dividir los datos de las aplicaciones haciendo más sencillo la migración de sistemas al ser independiente la base de datos del aplicativo.
- Ofrecer conectividad exterior, de forma que podemos replicar y distribuir la base de datos por diferentes sistemas.
- Gestores de Base de Datos Ofimáticas: son sistemas que gestionan datos domésticos o de pequeñas empresas . Un ejemplo de este tipo de base de datos es Microsoft Access.
- Gestores de Base de Datos Corporativas: son sistemas que pueden gestionar bases de datos enormes y que requieren normalmente de servidores especializados de altas prestaciones para su uso. Utilizan un sistema complejo para poder manipular los datos de forma simultánea por miles de usuarios a la vez. Oracle, SQL Server, DB2, IBM Informix, PostgreSQL, MySQL, etc. son ejemplos de estos tipos de bases de datos.