Inicio » Cursos » MVC PHP y MySql Página Web

Curso MVC PHP y MySql Página Web

Capitulo 4 ➜ Base de datos

Diseño y creación de la base de datos DBSTORE en MYSQL

Planteamiento, diseño y creación de la Base de Datos con el gestor de base de datos MYSQL para el desarrollo de una página web administrable usando XAMPP.

Diseño de la base de datos

Código SQL de nuestra base de datos con el nombre de mvc


CREATE TABLE `carrusel` (
  `id` int(11) NOT NULL,
  `descripcion` text NOT NULL,
  `urlfoto` varchar(100) NOT NULL,
  `link` varchar(100) NOT NULL,
  `orden` int(11) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

--
-- Volcado de datos para la tabla `carrusel`
--

INSERT INTO `carrusel` (`id`, `descripcion`, `urlfoto`, `link`, `orden`) VALUES
(1, 'Descripcion 1', 'monitores.jpg', 'https://codea.app', 1),
(2, 'Descripcion 2', 'mouse.jpg', 'https://codea.app', 2),
(3, 'Descripcion 3', 'teclados.jpg', 'https://codea.app', 3);

-- --------------------------------------------------------

--
-- Estructura de tabla para la tabla `categoria`
--

CREATE TABLE `categoria` (
  `id` int(11) NOT NULL,
  `slug` varchar(100) NOT NULL,
  `nombre` varchar(100) NOT NULL,
  `descripcion` text NOT NULL,
  `urlfoto` varchar(100) NOT NULL,
  `orden` int(11) NOT NULL,
  `created_at` date NOT NULL,
  `updated_at` date NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

--
-- Volcado de datos para la tabla `categoria`
--

INSERT INTO `categoria` (`id`, `slug`, `nombre`, `descripcion`, `urlfoto`, `orden`, `created_at`, `updated_at`) VALUES
(1, 'monitores', 'Monitores', 'Monitores descripcion', 'monitores.jpg', 1, '0000-00-00', '0000-00-00');

-- --------------------------------------------------------

--
-- Estructura de tabla para la tabla `login`
--

CREATE TABLE `login` (
  `id` int(11) NOT NULL,
  `email` varchar(100) NOT NULL,
  `password` varchar(100) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

--
-- Volcado de datos para la tabla `login`
--

INSERT INTO `login` (`id`, `email`, `password`) VALUES
(1, 'admin@gmail.com', '25d55ad283aa400af464c76d713c07ad');

-- --------------------------------------------------------

--
-- Estructura de tabla para la tabla `producto`
--

CREATE TABLE `producto` (
  `id` int(11) NOT NULL,
  `slug` varchar(100) NOT NULL,
  `nombre` varchar(100) NOT NULL,
  `descripcion` text NOT NULL,
  `urlfoto` varchar(100) NOT NULL,
  `orden` int(11) NOT NULL,
  `visitas` int(11) NOT NULL,
  `precio` decimal(7,2) NOT NULL,
  `precio_old` decimal(7,2) NOT NULL,
  `created_at` date NOT NULL,
  `updated_at` date NOT NULL,
  `categoria_id` int(11) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

--
-- Volcado de datos para la tabla `producto`
--

INSERT INTO `producto` (`id`, `slug`, `nombre`, `descripcion`, `urlfoto`, `orden`, `visitas`, `precio`, `precio_old`, `created_at`, `updated_at`, `categoria_id`) VALUES
(1, 'monitor-m1', 'Monitor M1', 'Monitor M1', 'm1.jpg', 1, 0, '13.00', '14.00', '2022-08-23', '2022-08-23', 1);

--
-- Índices para tablas volcadas
--

--
-- Indices de la tabla `carrusel`
--
ALTER TABLE `carrusel`
  ADD PRIMARY KEY (`id`);

--
-- Indices de la tabla `categoria`
--
ALTER TABLE `categoria`
  ADD PRIMARY KEY (`id`);

--
-- Indices de la tabla `login`
--
ALTER TABLE `login`
  ADD PRIMARY KEY (`id`);

--
-- Indices de la tabla `producto`
--
ALTER TABLE `producto`
  ADD PRIMARY KEY (`id`);

--
-- AUTO_INCREMENT de las tablas volcadas
--

--
-- AUTO_INCREMENT de la tabla `carrusel`
--
ALTER TABLE `carrusel`
  MODIFY `id` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=4;

--
-- AUTO_INCREMENT de la tabla `categoria`
--
ALTER TABLE `categoria`
  MODIFY `id` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=2;

--
-- AUTO_INCREMENT de la tabla `login`
--
ALTER TABLE `login`
  MODIFY `id` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=2;

--
-- AUTO_INCREMENT de la tabla `producto`
--
ALTER TABLE `producto`
  MODIFY `id` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=2;

 

Describiendo las tablas de nuestra base de datos:

Tabla carrusel

  • Descripción: Esta tabla almacena los elementos de un carrusel (o slider) en una página web. Cada elemento del carrusel incluye una descripción, una imagen, un enlace y un orden de visualización.

  • Estructura:

    • id: Identificador único del carrusel (entero, clave primaria, autoincremental).
    • descripcion: Texto descriptivo del elemento del carrusel.
    • urlfoto: Nombre del archivo de imagen que se muestra en el carrusel.
    • link: URL a la que se redirige cuando se hace clic en el elemento del carrusel.
    • orden: Orden de visualización del elemento en el carrusel.
  • Datos de Ejemplo:

Tabla categoria

  • Descripción: Esta tabla contiene información sobre las categorías de productos. Cada categoría tiene un nombre, una descripción, una imagen asociada, y campos para el orden y las fechas de creación y actualización.

  • Estructura:

    • id: Identificador único de la categoría (entero, clave primaria, autoincremental).
    • slug: Cadena de texto que representa una versión URL-amigable del nombre de la categoría.
    • nombre: Nombre de la categoría.
    • descripcion: Descripción de la categoría.
    • urlfoto: Nombre del archivo de imagen asociada a la categoría.
    • orden: Orden en el que la categoría debe aparecer.
    • created_at: Fecha de creación de la categoría.
    • updated_at: Fecha de última actualización de la categoría.
  • Datos de Ejemplo:

    • (1, 'monitores', 'Monitores', 'Monitores descripcion', 'monitores.jpg', 1, '0000-00-00', '0000-00-00')

Tabla login

  • Descripción: Esta tabla gestiona la información de inicio de sesión de los usuarios. Contiene campos para el correo electrónico y la contraseña.

  • Estructura:

    • id: Identificador único del registro (entero, clave primaria, autoincremental).
    • email: Correo electrónico del usuario.
    • password: Contraseña en formato encriptado del usuario.
  • Datos de Ejemplo:

    • (1, 'admin@gmail.com', '25d55ad283aa400af464c76d713c07ad')

Tabla producto

  • Descripción: Esta tabla contiene información sobre los productos disponibles en la tienda. Incluye detalles como el nombre, descripción, precio, y la categoría a la que pertenece el producto.

  • Estructura:

    • id: Identificador único del producto (entero, clave primaria, autoincremental).
    • slug: Cadena de texto que representa una versión URL-amigable del nombre del producto.
    • nombre: Nombre del producto.
    • descripcion: Descripción del producto.
    • urlfoto: Nombre del archivo de imagen del producto.
    • orden: Orden en el que el producto debe aparecer.
    • visitas: Contador de visitas del producto.
    • precio: Precio actual del producto.
    • precio_old: Precio anterior del producto.
    • created_at: Fecha de creación del producto.
    • updated_at: Fecha de última actualización del producto.
    • categoria_id: Identificador de la categoría a la que pertenece el producto (clave foránea que hace referencia a categoria.id).
  • Datos de Ejemplo:

    • (1, 'monitor-m1', 'Monitor M1', 'Monitor M1', 'm1.jpg', 1, 0, '13.00', '14.00', '2022-08-23', '2022-08-23', 1)

Índices y Auto-Incremento

  • Índices: Cada tabla tiene un índice primario en el campo id para garantizar la unicidad y mejorar el rendimiento de las consultas.
  • Auto-Incremento: Los campos id en cada tabla están configurados para auto-incrementarse automáticamente con cada nuevo registro, comenzando desde el valor especificado.

Esta estructura permite gestionar de manera eficiente carruseles, categorías, usuarios y productos dentro de una aplicación web

 


1652 visitas

« Capítulo 3 – Estructura de carpetas

Capítulo 5 – Tabla Login »

Descarga el código del proyecto

Descarga el código fuente del proyecto adquiriendo el curso completo

Comprar

Más cursos que pueden interesarte

Más cursos

© Copyright Codea App | LATAM | 2020 - 2024