Crear una Tabla de Catálogo de Productos

MySQLBeginner
Practicar Ahora

Introducción

Una librería local requiere asistencia para organizar su base de datos de inventario. Como administrador de la base de datos, su misión consiste en crear una tabla que almacene toda la información relevante sobre sus libros. Este desafío pondrá a prueba su capacidad para definir una tabla en MySQL utilizando los tipos de datos y las restricciones técnicas más apropiadas para cada campo.

Crear la Tabla de Libros

Su objetivo es generar una tabla para gestionar las existencias de la librería. La estructura debe ser capaz de almacenar de forma eficiente diversos tipos de información para cada ejemplar.

Tareas

  • Conectarse a MySQL con el usuario root
  • Seleccionar la base de datos bookstore
  • Crear una tabla llamada books con las columnas y tipos de datos adecuados para registrar lo siguiente:
    • ID del libro (debe ser autoincremental)
    • Título del libro (máximo 200 caracteres, obligatorio)
    • Precio (debe admitir valores decimales hasta $999.99)
    • Fecha de publicación
    • Número de páginas (solo números enteros)
    • Descripción (texto largo)
    • Cantidad en stock (debe ser 0 o un valor positivo)

Requisitos

  • Todas las operaciones deben realizarse dentro del directorio ~/project
  • El nombre de la tabla debe ser exactamente books
  • Todos los nombres de las columnas deben estar en minúsculas
  • La clave primaria debe llamarse id
  • El título no puede ser nulo (NULL)
  • El precio debe tener exactamente 2 posiciones decimales
  • La columna quantity_in_stock no debe permitir valores negativos

Ejemplo

Tras crear la tabla correctamente, al ejecutar el comando de descripción debería obtener un resultado similar a este:

DESCRIBE books;
+-------------------+--------------+------+-----+---------+----------------+
| Field             | Type         | Null | Key | Default | Extra          |
+-------------------+--------------+------+-----+---------+----------------+
| id                | int(11)      | NO   | PRI | NULL    | auto_increment |
| title             | varchar(200) | NO   |     | NULL    |                |
| price             | decimal(5,2) | YES  |     | NULL    |                |
| publication_date  | date         | YES  |     | NULL    |                |
| page_count        | int(11)      | YES  |     | NULL    |                |
| description       | text         | YES  |     | NULL    |                |
| quantity_in_stock | int(11)      | YES  |     | NULL    |                |
+-------------------+--------------+------+-----+---------+----------------+

Resumen

En este desafío, ha practicado la creación de tablas en MySQL aplicando tipos de datos y restricciones técnicas precisas. Las habilidades demostradas incluyen la selección de tipos de datos según la naturaleza de la información, la implementación de claves primarias autoincrementales, la configuración de restricciones de obligatoriedad (NOT NULL) y el uso de cláusulas CHECK para la validación de integridad de datos. Estos fundamentos son pilares del diseño de bases de datos y resultan esenciales para cualquier trabajo profesional con MySQL.

✨ Revisar Solución y Practicar