Introducción al Lenguaje de Definición de Datos (DDL)

DDL significa Data Definition Language, es decir, un conjunto de comandos para describir el diseño completo de la base de datos en SQL (Structured Query Language). Los comandos principales del DDL son:

  • CREATE: Se utiliza para crear nuevos objetos.
  • ALTER: Se utiliza para modificar la estructura de objetos existentes.
  • DROP: Se utiliza para eliminar objetos.

Uso de los Comandos CREATE, ALTER y DROP en MySQL

a. CREATE

El comando CREATE se utiliza para crear nuevas bases de datos, nuevas tablas o nuevas vistas.

  • Ejemplo: CREATE DATABASE toko_buku;
  • Explicación: Este comando crea una nueva base de datos llamada toko_buku.

b. ALTER

El comando ALTER se utiliza para modificar la estructura de una tabla ya creada. Esta operación puede añadir, eliminar, modificar columnas, alterar la tabla o asignar nuevos atributos a las columnas.

  • Ejemplo: ALTER TABLE buku ADD judul_buku varchar(20);
  • Explicación: Este comando añade un nuevo campo (columna) llamado judul_buku de tipo varchar con una longitud máxima de 20 caracteres a la tabla buku.

c. DROP

El comando DROP elimina permanentemente un objeto de la base de datos. El objeto puede ser la propia base de datos, una tabla, una función, un índice, un procedimiento, un disparador o una vista.

  • Ejemplo: DROP DATABASE toko_buku;
  • Explicación: Este comando elimina la base de datos llamada toko_buku.

Tipos de Datos en MySQL

Elegir el tipo de dato correcto es muy importante para la eficiencia del almacenamiento en la base de datos. A continuación se presentan las categorías de tipos de datos en MySQL:

A. Tipos de Datos Numéricos

Se utilizan para almacenar datos numéricos.

  • TINYINT: Almacena números enteros (positivos/negativos). Rango: -128 a 127. Tamaño: 1 byte (8 bits).
  • SMALLINT: Almacena números enteros. Rango: -32768 a 32767. Tamaño: 2 bytes (16 bits).
  • MEDIUMINT: Almacena números enteros. Rango: -8388608 a 8388607. Tamaño: 3 bytes (24 bits).
  • INT: Almacena números enteros. Rango: -2147483648 a 2147483647. Tamaño: 4 bytes (32 bits).
  • BIGINT: Almacena números enteros a gran escala. Rango: -9223372036854775808 a 9223372036854775807. Tamaño: 8 bytes (64 bits).
  • FLOAT: Almacena números de coma flotante de precisión simple. Tamaño: 4 bytes (32 bits).
  • DOUBLE / REAL: Almacena números de coma flotante de precisión doble. Tamaño: 8 bytes (64 bits).
  • DECIMAL / NUMERIC: Almacena números de coma fija con precisión muy alta. Tamaño: 8 bytes (64 bits).

B. Tipos de Datos de Cadena (Texto)

Se utilizan para almacenar datos de caracteres o texto.

  • CHAR: Almacena cadenas de longitud fija (ej. ID de artículo, número de identificación). Rango: 0 a 255 caracteres.
  • VARCHAR: Almacena cadenas de longitud variable. Rango: 0 a 65.535 caracteres (en versiones recientes).
  • TINYTEXT: Almacena textos cortos. Rango: 0 a 255 caracteres.
  • TEXT: Almacena textos estándar. Rango: 0 a 65.535 caracteres.
  • MEDIUMTEXT: Almacena textos de longitud media. Rango: 0 a 16.777.215 caracteres.
  • LONGTEXT: Almacena textos muy largos. Rango: 0 a 4.294.967.295 caracteres.

C. Tipos de Datos de Fecha y Hora

Se utilizan para almacenar datos de fecha y hora.

  • DATE: Almacena una fecha (Formato: AAAA-MM-DD). Rango: ‘1000-01-01’ a ‘9999-12-31’. Tamaño: 3 bytes.
  • TIME: Almacena una hora (Formato: HH:MM:SS). Rango: ‘-838:59:59’ a ‘+838:59:59’. Tamaño: 3 bytes.
  • DATETIME: Combinación de fecha y hora (Formato: AAAA-MM-DD HH:MM:SS). Rango: ‘1000-01-01 00:00:00’ a ‘9999-12-31 23:59:59’. Tamaño: 8 bytes.
  • YEAR: Almacena un año (Formato: AAAA). Rango: 1900 a 2155. Tamaño: 1 byte.

D. Tipos de Datos BLOB (Binarios)

BLOB significa Binary Large Object. Se utiliza para almacenar datos binarios puros, distingue entre mayúsculas y minúsculas (case-sensitive) y es ideal para archivos multimedia como imágenes, documentos o audio.

  • BIT: Almacena datos binarios. Rango: 64 dígitos binarios.
  • TINYBLOB: Tamaño máximo de 255 bytes.
  • BLOB: Tamaño máximo de 65.535 bytes.
  • MEDIUMBLOB: Tamaño máximo de 16.777.215 bytes.
  • LONGBLOB: Tamaño máximo de 4.294.967.295 bytes.

Tipos de Claves en SQL

Una clave en SQL es una combinación de uno o más atributos (columnas) que sirve para distinguir de manera única las filas de datos en una tabla o para relacionar una tabla con otra.

  • Superclave: Un conjunto de atributos que se puede utilizar para identificar de manera única cada fila de datos en una tabla.
  • Clave Candidata: Una superclave mínima sin atributos redundantes. La clave candidata se elige de la combinación más pequeña de campos capaz de identificar valores únicos.
  • Clave Primaria: La clave candidata seleccionada como identificador principal de un registro. Los datos en una clave primaria no pueden estar vacíos (Not Null) y no pueden duplicarse. Cada tabla solo puede tener una Clave Primaria.
  • Clave Alternativa: Una clave candidata que no ha sido seleccionada como Clave Primaria.
  • Clave Foránea: Clave utilizada para relacionar una tabla con otra, formando una relación padre-hijo. La Clave Primaria de la tabla principal (padre) es referenciada por la Clave Foránea en la tabla relacionada (hijo).
  • Clave Compuesta: Clave formada por dos o más atributos para identificar una entidad de manera única. Se utiliza generalmente cuando ninguna columna única cumple los requisitos para ser Clave Primaria.

Tipos de Restricciones en MySQL

Restricciones son reglas que se aplican a columnas o tablas para mantener la integridad y validez de los datos.

  • NOT NULL: Garantiza que una columna no puede dejarse vacía al insertar un registro. La columna debe rellenarse obligatoriamente con datos.
  • UNIQUE: Garantiza que cada valor en una columna es diferente a los demás (no hay registros duplicados).
  • PRIMARY KEY: Combinación de las restricciones NOT NULL y UNIQUE. Identifica cada fila en una tabla de manera única. Solo se permite una PRIMARY KEY por tabla.
  • FOREIGN KEY: Mantiene la integridad referencial entre tablas. Garantiza que el valor en la columna hijo tenga una referencia válida en la columna padre (de otra tabla).
  • CHECK: Realiza una validación o comprobación antes de que los datos se almacenen en la base de datos. Los datos se evalúan con un valor booleano; si cumplen la condición, se considera true y se almacenan, pero si es false, SQL los rechaza y muestra un mensaje de error.

Shares:
Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *