Entradas

bd-cms-bueno

 Sí. Para el diseño que acabamos de definir, no vamos a agregar entrada_id a subtemas . La relación será: temas ↓ subtemas ↓ entradas Y UNIQUE (subtema_id) garantizará que cada subtema tenga como máximo una entrada . Te dejo el script completo listo para copiar. También agregué DROP DATABASE IF EXISTS al principio para que puedas eliminar la versión anterior y crearla nuevamente desde cero. -- ============================================================ -- BASE DE DATOS: BLOG EDUCATIVO -- ============================================================ DROP DATABASE IF EXISTS blog_educativo; CREATE DATABASE blog_educativo CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; USE blog_educativo; -- ============================================================ -- 1. TABLA: TEMAS -- ============================================================ CREATE TABLE temas ( id INT AUTO_INCREMENT PRIMARY KEY , nombre VARCHAR ( 150 ) NOT NULL , slug VARCHAR...

tipo de recurso ps5

  Modificación de la base de datos Tu base anterior funciona. Solamente agregaría los campos para recursos interactivos. Ejecuta: ALTER TABLE entradas ADD COLUMN tipo_recurso ENUM( 'ninguno' , 'p5' ) NOT NULL DEFAULT 'ninguno' AFTER estado, ADD COLUMN recurso_ruta VARCHAR ( 500 ) NULL AFTER tipo_recurso;

ia

 Sí. De hecho, la estructura que acabamos de hacer es muy buena para agregar IA después . Yo no metería la IA todavía en el CMS, pero sí diseñaría desde ahora la base pensando en ella. La idea sería que la IA no sea el contenido del blog , sino una capa que utiliza el contenido que ya tienes. La arquitectura que te recomiendo TU CMS │ ▼ ┌──────────────┐ │ MySQL │ └──────┬───────┘ │ ┌────────────┼────────────┐ │ │ │ ▼ ▼ ▼ Entradas Preguntas Multimedia │ │ │ └────────────┼────────────┘ │ ▼ ┌──────────────┐ │ IA │ └──────┬───────┘ ...

bd-2

 CREATE DATABASE IF NOT EXISTS blog_educativo CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; USE blog_educativo; SET FOREIGN_KEY_CHECKS = 0; DROP TABLE IF EXISTS respuestas_examen; DROP TABLE IF EXISTS intentos_examen; DROP TABLE IF EXISTS examen_preguntas; DROP TABLE IF EXISTS examenes; DROP TABLE IF EXISTS flashcards; DROP TABLE IF EXISTS respuestas; DROP TABLE IF EXISTS preguntas; DROP TABLE IF EXISTS multimedia; DROP TABLE IF EXISTS entradas; DROP TABLE IF EXISTS subtemas; DROP TABLE IF EXISTS temas; SET FOREIGN_KEY_CHECKS = 1; -- ========================================================= -- TEMAS -- ========================================================= CREATE TABLE temas (     id INT UNSIGNED AUTO_INCREMENT PRIMARY KEY,     nombre VARCHAR(150) NOT NULL,     slug VARCHAR(180) NOT NULL UNIQUE,     descripcion TEXT NULL,     activo TINYINT(1) NOT NULL DEFAULT 1,     fecha_creacion DATETIME NOT NULL DEFAULT CURRENT_...