Fundamentos de Bases de Datos Relacionales: Conceptos, SQL y Tipos de Datos

Enviado por Chuletator online y clasificado en Informática y Telecomunicaciones

Escrito el en español con un tamaño de 4,98 KB

Conceptos Fundamentales de Bases de Datos

Una base de datos es un conjunto de datos ordenados y almacenados en un soporte informático (ej., un disco duro).

Los datos se organizan en tablas compuestas por campos (columnas) y registros (filas).

Generalmente, cada base de datos está formada por varias tablas que están relacionadas entre sí. Estas se denominan bases de datos relacionales.

Sistemas Gestores de Bases de Datos (SGBD) y SQL

Para gestionar estos datos se necesita un programa denominado SGBD (Sistema Gestor de Bases de Datos).

Ejemplos de SGBD:

  • Microsoft Access (incluido en el paquete Microsoft Office).
  • Base (incluido en el paquete LibreOffice).
  • Oracle (a menudo abreviado como ORA).
  • MySQL.
  • MariaDB.

Para interactuar y manejar las bases de datos se utiliza el lenguaje SQL (Structured Query Language), que significa "Lenguaje de Consulta Estructurado".

Tipos de Datos Comunes

Los campos de una tabla deben definirse con un tipo de dato específico:

  • INT: Utilizado para almacenar números enteros.
  • CHAR: Utilizado para almacenar cadenas de caracteres de longitud fija.
  • VARCHAR: Utilizado para almacenar cadenas de caracteres de longitud variable.

Diferencia entre CHAR y VARCHAR

La principal diferencia radica en la gestión del espacio de almacenamiento:

  • Si definimos un campo como CHAR(5), permite introducir hasta cinco caracteres. Si solo se introduce un carácter, el espacio reservado y utilizado sigue siendo de 5 caracteres (rellenando el resto con espacios).
  • Si definimos un campo como VARCHAR(5), permite almacenar un máximo de cinco caracteres. Si solo se introduce 1 carácter en el campo, solo se almacena ese carácter (más una pequeña sobrecarga para la longitud), optimizando el espacio. Por lo tanto, VARCHAR es ideal para datos de longitud variable.

Modificadores y Restricciones de Campos

Estos modificadores definen reglas sobre los datos que pueden ser almacenados en un campo:

  • NULL / NOT NULL:
    • NOT NULL: Indica que el campo no puede quedar vacío.
    • NULL: Indica que el campo puede quedar vacío.
  • AUTO_INCREMENT: Este modificador solo se puede utilizar en columnas de tipo INT y generalmente debe ser parte de una clave. Permite que el campo tome un valor distinto y secuencial en cada nuevo registro (ej., 1, 2, 3...), sin necesidad de introducirlo explícitamente.
  • PRIMARY KEY (Clave Principal): Es una restricción fundamental que debe tener cada tabla. Identifica de forma unívoca cada registro dentro de la tabla. Por defecto, una clave primaria es NOT NULL, y solo puede haber una Primary Key por tabla.

Comandos SQL Esenciales (DDL y DML)

Comandos de Definición de Datos (DDL)

Se utilizan para definir o modificar la estructura de la base de datos.

  • CREATE DATABASE: Se utiliza para crear una nueva base de datos vacía.

    Ejemplo: CREATE DATABASE MiBase;

  • DROP DATABASE: Se utiliza para eliminar completamente una base de datos existente.

    Ejemplo: DROP DATABASE MiBase;

  • USE: Se utiliza para seleccionar la base de datos con la que se va a trabajar.
  • CREATE TABLE: Se utiliza para crear una nueva tabla donde se almacenará la información.

    Ejemplo: CREATE TABLE Usuarios (ID INT PRIMARY KEY, Nombre VARCHAR(20));

  • ALTER TABLE: Se utiliza para modificar la estructura de una tabla existente (ej., añadir nuevos campos).
  • DROP TABLE: Se utiliza para eliminar por completo una tabla existente.

Comandos de Manipulación de Datos (DML)

Se utilizan para gestionar los datos dentro de las tablas.

  • INSERT: Se utiliza para añadir o insertar nuevos registros (datos) en una tabla.

Ejemplo de Definición de Estructura de Tabla

A continuación, se muestra un ejemplo de cómo se definirían los campos y sus restricciones en una tabla:

  • ID: INT NOT NULL
  • Nombre: VARCHAR(20) NOT NULL
  • Edad: INT NOT NULL
  • Dirección: CHAR(25)
  • Salario: DECIMAL(18, 2)
  • Restricción: PRIMARY KEY (ID) (Se asume que ID es la clave principal)

Entradas relacionadas: