# data[].attributes.attachment_link.readable_text
-- MySQL Script generated by MySQL Workbench
-- Tue Oct 14 02:24:30 2025
-- Model: New Model    Version: 1.0
-- MySQL Workbench Forward Engineering

SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0;
SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0;
SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION';

-- -----------------------------------------------------
-- Schema mydb
-- -----------------------------------------------------
-- -----------------------------------------------------
-- Schema auto_insurance
-- -----------------------------------------------------
DROP SCHEMA IF EXISTS seguros_automoviles ;

-- -----------------------------------------------------
-- Schema auto_insurance
-- -----------------------------------------------------
CREATE SCHEMA IF NOT EXISTS seguros_automoviles DEFAULT CHARACTER SET latin1 ;
USE seguros_automoviles ;

-- -----------------------------------------------------
-- Table `auto_insurance`.`categoria`
-- -----------------------------------------------------

CREATE TABLE categoria (
  Cod_Cat INT AUTO_INCREMENT  PRIMARY KEY,
  Descripcion VARCHAR(100) NOT NULL
) ENGINE=InnoDB;

CREATE TABLE aseguradora (
  Nombre VARCHAR(100) PRIMARY KEY,
  Sede_seg VARCHAR(100),
  Tif VARCHAR(45) UNIQUE
) ENGINE=InnoDB;

-- =========================
-- 2) ENTIDADES
-- =========================
CREATE TABLE vehiculo (
  MatriBast VARCHAR(20) PRIMARY KEY,
  Marca VARCHAR(50),
  Modelo VARCHAR(50),
  categoria_Cod_Cat INT,
  CONSTRAINT fk_vehiculo_categoria
    FOREIGN KEY (categoria_Cod_Cat) REFERENCES categoria(Cod_Cat)
) ENGINE=InnoDB;

CREATE TABLE conductor (
  N_Permiso INT AUTO_INCREMENT PRIMARY KEY,
  Nombre VARCHAR(100),
  Apellidos VARCHAR(100),
  Direccion VARCHAR(200),
  Lugar_Exp VARCHAR(100)
) ENGINE=InnoDB;


CREATE TABLE circunstancia (
  Cod_circunstancia VARCHAR(4) PRIMARY KEY,
  Descripcion VARCHAR(200) NOT NULL
) ENGINE=InnoDB;

CREATE TABLE asegurado (
  N_Poliza INT AUTO_INCREMENT PRIMARY KEY,
  Agencia VARCHAR(100) NOT NULL,
  Nombre VARCHAR(100) NOT NULL,
  Apellidos VARCHAR(100) NOT NULL,
  Da��os_propios ENUM('S��','No') NOT NULL,
  Recupera_IVA ENUM('S��','No') NOT NULL,
  Direccion VARCHAR(200) NOT NULL,
  Localidad VARCHAR(200) NOT NULL,
  Tif VARCHAR(45) NOT NULL,
  Carta_Verde ENUM('Activa','Null') NULL,
  Validez_Carta_Verde DATE NULL,
  vehiculo_MatriBast VARCHAR(20) NOT NULL,
  CONSTRAINT fk_asegurado_aseguradora
  FOREIGN KEY (Nombre) REFERENCES aseguradora(Nombre),

  CONSTRAINT fk_asegurado_vehiculo
    FOREIGN KEY (vehiculo_MatriBast) REFERENCES vehiculo(MatriBast),

  -- 1:1 M-ER ���asegura���
  CONSTRAINT uq_asegurado_vehiculo UNIQUE (vehiculo_MatriBast)
) ENGINE=InnoDB;

-- =========================
-- 3) TABLAS PUENTE
-- =========================
CREATE TABLE accidente (
  Numero_accidente INT AUTO_INCREMENT PRIMARY KEY,
  Fecha DATE,
  Hora TIME,
  Da��os_M VARCHAR(100),
  Victimas VARCHAR(45),
  Lugar VARCHAR(100),
  Tif VARCHAR(45),
  Nombre VARCHAR(45),
  Direccion VARCHAR(100),
  Ocupante_A_B VARCHAR(45),
  Testigo VARCHAR(45),
  conductor_N_Permiso INT NULL,
  CONSTRAINT fk_accidente_conductor
    FOREIGN KEY (conductor_N_Permiso) REFERENCES conductor(N_Permiso)
) ENGINE=InnoDB;

-- N:M accidente ��� circunstancia
CREATE TABLE accidente_circunstancia (
  accidente_Numero_accidente INT NOT NULL,
  circunstancia_Cod_circunstancia VARCHAR(4) NOT NULL,
  PRIMARY KEY (accidente_Numero_accidente, circunstancia_Cod_circunstancia),
  CONSTRAINT fk_ac_ci_accidente
    FOREIGN KEY (accidente_Numero_accidente) REFERENCES accidente(Numero_accidente)
      ON DELETE CASCADE ON UPDATE CASCADE,
  CONSTRAINT fk_ac_ci_circunstancia
    FOREIGN KEY (circunstancia_Cod_circunstancia) REFERENCES circunstancia(Cod_circunstancia)
      ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB;

-- N:M vehiculo ��� accidente-vehiculo (���presenta_doc���)
CREATE TABLE IF NOT EXISTS accidente_vehiculo (
  accidente_Numero_accidente INT NOT NULL,
  vehiculo_MatriBast VARCHAR(20) NOT NULL,
  N_cir VARCHAR(45)  NOT NULL,
  TipoA_B VARCHAR(45) NOT NULL,
  Da��os VARCHAR(100) NOT NULL,
  Observar VARCHAR(105) NULL,
  Pto_choque VARCHAR(150) NOT NULL,
  Fecha_pres DATE NULL,
  Imagen VARCHAR(100) NULL,
PRIMARY KEY (accidente_Numero_accidente, vehiculo_MatriBast),
CONSTRAINT fk_ac_ve_accidente
FOREIGN KEY (accidente_Numero_accidente) REFERENCES accidente(Numero_accidente)
ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT fk_ac_ve_vehiculo
FOREIGN KEY (vehiculo_MatriBast) REFERENCES vehiculo(MatriBast)
      ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB;

DROP TRIGGER IF EXISTS bi_accidente_vehiculo_autolink;
DELIMITER $$

CREATE TRIGGER bi_accidente_vehiculo_autolink
BEFORE INSERT ON accidente_vehiculo
FOR EACH ROW
BEGIN
  DECLARE v_acc INT;

  -- Si el campo viene nulo o en blanco, intentamos buscar el accidente
  IF NEW.accidente_Numero_accidente IS NULL OR NEW.accidente_Numero_accidente = 0 THEN
    SELECT a.Numero_accidente
      INTO v_acc
      FROM accidente a
     WHERE a.Fecha = NEW.Fecha_pres
     ORDER BY a.Hora DESC, a.Numero_accidente DESC
     LIMIT 1;

    -- Si se encontr�� algo, lo asigna. Si no, previene error.
    IF v_acc IS NOT NULL THEN
      SET NEW.accidente_Numero_accidente = v_acc;
    ELSE
      -- Evita insertar sin accidente asociado
      SIGNAL SQLSTATE '45000'
        SET MESSAGE_TEXT = 'No se encontr�� accidente con esa fecha (Fecha_pres).';
    END IF;
  END IF;
END$$

DELIMITER ;

-- N:M conductor ��� categor��a (autoriza)
CREATE TABLE conductor_categoria (
  conductor_N_Permiso INT NOT NULL,
  categoria_Cod_Cat INT NOT NULL,
  Fecha_exp DATE NOT NULL,
  Fecha_validez DATE NULL,
  PRIMARY KEY (conductor_N_Permiso, categoria_Cod_Cat),
  FOREIGN KEY (conductor_N_Permiso) REFERENCES conductor(N_Permiso)
    ON DELETE CASCADE ON UPDATE CASCADE,
  FOREIGN KEY (categoria_Cod_Cat) REFERENCES categoria(Cod_Cat)
    ON DELETE RESTRICT ON UPDATE CASCADE
);


CREATE TABLE accidente_asegurado (
  accidente_Numero_accidente INT NOT NULL,
  asegurado_N_Poliza INT NOT NULL,
  PRIMARY KEY (accidente_Numero_accidente, asegurado_N_Poliza),
  CONSTRAINT fk_ac_as_accidente FOREIGN KEY (accidente_Numero_accidente) REFERENCES accidente(Numero_accidente)
    ON DELETE CASCADE ON UPDATE CASCADE,
  CONSTRAINT fk_ac_as_asegurado FOREIGN KEY (asegurado_N_Poliza) REFERENCES asegurado(N_Poliza)
    ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB;

-- CATEGORIA 
INSERT IGNORE INTO categoria (Descripcion) VALUES
('Conductor particular'),
('Manejo de cami��n'),
('Licencia vencida'),
('Operador Trailer'),
('No autorizado'),
('Transporte p��blico'),
('Conductor con historial limpio'),
('Veh��culo familiar'),
('Veh��culo familiar'),
('Veh��culo familiar'),
('Licencia vencida'),
('Suspendido por infracciones'),
('Uber autorizado'),
('Licencia vencida'),
('Veh��culo familiar'),
('Licencia suspendida temporalmente'),
('Licencia suspendida temporalmente'),
('Licencia vencida'),
('Operador Trailer'),
('No autorizado'),
('Transporte p��blico'),
('Conductor con historial limpio'),
('Veh��culo familiar'),
('Veh��culo familiar'),
('Veh��culo familiar'),
('Baja m��dica por accidente'),
('Veh��culo familiar'),
('Licencia vencida'),
('Veh��culo familiar'),
('Veh��culo familiar'),
('Veh��culo familiar'),
('Veh��culo familiar'),
('Licencia vencida'),
('Licencia vencida'),
('Licencia vencida'),
('Licencia vencida'),
('Baja m��dica por accidente'),
('Veh��culo familiar'),
('Licencia vencida'),
('Veh��culo familiar'),
('Baja m��dica por accidente'),
('Baja m��dica por accidente'),
('Licencia vencida'),
('Veh��culo familiar'),
('Baja m��dica por accidente'),
('Baja m��dica por accidente'),
('Veh��culo familiar'),
('Veh��culo familiar'),
('Veh��culo familiar'),
('Veh��culo familiar'),
('Veh��culo familiar'),
('Veh��culo familiar');
-- ASEGURADORA
INSERT INTO aseguradora (Nombre,Sede_seg,Tif) VALUES
('Segura1','CDMX','TIF1001'),('Segura2','Guadalajara','TIF1002'),('Segura3','Monterrey','TIF1003'),('Segura4','Puebla','TIF1004'),
('Segura5','Tijuana','TIF1005'),('Segura6','Le��n','TIF1006'),('Segura7','Quer��taro','TIF1007'),('Segura8','M��rida','TIF1008'),
('Segura9','Canc��n','TIF1009'),('Segura10','Morelia','TIF1010'),('Segura11','Toluca','TIF1011'),('Segura12','Chihuahua','TIF1012'),
('Segura13','Culiac��n','TIF1013'),('Segura14','Hermosillo','TIF1014'),('Segura15','Durango','TIF1015'),('Segura16','Saltillo','TIF1016'),
('Segura17','Aguascalientes','TIF1017'),('Segura18','Villahermosa','TIF1018'),('Segura19','Tuxtla','TIF1019'),('Segura20','Tepic','TIF1020'),
('Segura21','Oaxaca','TIF1021'),('Segura22','Chilpancingo','TIF1022'),('Segura23','La Paz','TIF1023'),('Segura24','Mazatl��n','TIF1024'),
('Segura25','San Luis Potos��','TIF1025'),('Segura26','Tlaxcala','TIF1026'),('Segura27','Colima','TIF1027'),('Segura28','Pachuca','TIF1028'),
('Segura29','Veracruz','TIF1029'),('Segura30','Tlaxco','TIF1030'),('Segura31','Villanueva','TIF1031'),('Segura32','Zacatecas','TIF1032'),
('Segura33','Tepotzotl��n','TIF1033'),('Segura34','Tehuac��n','TIF1034'),('Segura35','Ensenada','TIF1035'),('Segura36','Guaymas','TIF1036'),
('Segura37','Reynosa','TIF1037'),('Segura38','Matamoros','TIF1038'),('Segura39','Nuevo Laredo','TIF1039'),('Segura40','Saltillo','TIF1040'),
('Segura41','Irapuato','TIF1041'),('Segura42','Celaya','TIF1042'),('Segura43','San Juan','TIF1043'),('Segura44','Coatzacoalcos','TIF1044'),
('Segura45','Minatitl��n','TIF1045'),('Segura46','Tula','TIF1046'),('Segura47','Tulancingo','TIF1047'),('Segura48','Tuxtepec','TIF1048'),
('Segura49','Ocosingo','TIF1049'),('Segura50','Tecom��n','TIF1050');

-- VEHICULO 
INSERT INTO vehiculo (MatriBast, Marca, Modelo, categoria_Cod_Cat) VALUES
('MAT001', 'Toyota', 'Corolla', 1),
('MAT002', 'Toyota', 'Camry', 1),
('MAT003', 'Nissan', 'Sentra', 1),
('MAT004', 'Nissan', 'Altima', 1),
('MAT005', 'Honda', 'Civic', 1),
('MAT006', 'Honda', 'Accord', 1),
('MAT007', 'Kia', 'Rio', 1),
('MAT008', 'Hyundai', 'Santa Fe', 2),
('MAT009', 'Hyundai', 'Tucson', 2),
('MAT010', 'Hyundai', 'Accent', 1),
('MAT011', 'Volkswagen', 'Jetta', 1),
('MAT012', 'Volkswagen', 'Golf', 1),
('MAT013', 'Volkswagen', 'Tiguan', 2),
('MAT014', 'Volkswagen', 'Passat', 1),
('MAT015', 'Ford', 'Mustang', 1),
('MAT016', 'Ford', 'Explorer', 2),
('MAT017', 'Ford', 'Ranger', 3),
('MAT018', 'Ford', 'Focus', 1),
('MAT019', 'Chevrolet', 'Silverado', 3),
('MAT020', 'Chevrolet', 'Suburban', 2),
('MAT021', 'Chevrolet', 'Onix', 1),
('MAT022', 'Kia', 'Aveo', 1),
('MAT023', 'Kia', 'Sorento', 2),
('MAT024', 'Chevrolet', 'Spark', 1),
('MAT025', 'Nissan', 'Versa', 1),
('MAT026', 'Nissan', 'X-Trail', 2),
('MAT027', 'Toyota', 'Hilux', 3),
('MAT028', 'Toyota', 'RAV4', 2),
('MAT029', 'Ford', 'EcoSport', 2),
('MAT030', 'Toyota', 'Yaris', 1),
('MAT031', 'Honda', 'CR-V', 2),
('MAT032', 'Honda', 'HR-V', 2),
('MAT033', 'Mazda', 'CX-5', 2),
('MAT034', 'Mazda', 'BT-50', 3),
('MAT035', 'Suzuki', 'Swift', 1),
('MAT036', 'Volkswagen', 'Polo', 1),
('MAT037', 'Mitsubishi', 'Lancer', 1),
('MAT038', 'Mitsubishi', 'Outlander', 2),
('MAT039', 'Mitsubishi', 'Triton', 3),
('MAT040', 'Chevrolet', 'Tracker', 2),
('MAT041', 'Chevrolet', 'Colorado', 3),
('MAT042', 'Hyundai', 'Elantra', 1),
('MAT043', 'Hyundai', 'Venue', 2),
('MAT044', 'Renault', 'Duster', 2),
('MAT045', 'Renault', 'Logan', 1),
('MAT046', 'Renault', 'Alaskan', 3),
('MAT047', 'Nissan', 'Frontier', 3),
('MAT048', 'Mazda', 'Frontier', 1),
('MAT049', 'Mazda', 'Colorado', 1),
('MAT050', 'Suzuki', 'Vitara', 2);

-- CONDUCTOR 
ALTER TABLE conductor ADD UNIQUE KEY uq_conductor_nombre (Nombre, Apellidos);
INSERT INTO conductor (Nombre, Apellidos, Direccion, Lugar_Exp) VALUES
('Johan','Montiel','4 poniente','Puebla'),
('Marco','Cisneros','5 sur','Puebla'),
('Ulises','Lopez','08 Oriente','Estado de Mexico'),
('Rosa','Hernandez','5 Norte','Estado de Mexico'),
('Cesar','Cruz','2 norte','Oaxaca'),
('Daniela','Temoxtle','Hermanos Serdan','Puebla'),
('Victor','De La Cruz','Lazaro Cardenas','Puebla'),
('Omar','Ballesteros','Miguel Hidalgo','Estado de Mexico'),
('Azucena','Cruz','Capuchino','Queretaro'),
('Alejandro','Martinez','San Lorenzo Teotipilco','Guadalajara'),
('Alexis','Lopez','Avenida Nacional','Estado de Mexico'),
('Emilio','Carillo','Reforma Norte','Oaxaca'),
('Angel','Amado','Avenida Baja California','Oaxaca'),
('Cesar','Suarez','9 oriente','Veracruz'),
('Jesus','Luna','San Marcos Necoxtla','Veracruz'),
('Javier','Tetlatle','Privada betanzo','Puebla'),
('Josue','Higareda','2 sur','Estado de Mexico'),
('Marisol','Flores','San Rafael','Queretaro'),
('Monica','Galicia','San Bartolo','Guadalajara'),
('Brisa','Galindo','Madero','Estado de Mexico'),
('Mariana','Gonzalez','4 poniente','Oaxaca'),
('Raul','Castillo','Juan Escutia','Estado de Mexico'),
('Rosalia','Ginez','Juan de la Barrera','Queretaro'),
('Gerardo','Allende','El riego','Guadalajara'),
('Francisco','Bola��os','2 sur','Estado de Mexico'),
('Guzman','Juarez','Avenida Nacional','Oaxaca'),
('Alejandra','Soto','7 oriente','Oaxaca'),
('Miguel','Salinas','5 Norte','Veracruz'),
('Sandra','Romero','2 norte','Veracruz'),
('Laura','Galicia','Hermanos Serdan','Puebla'),
('Abril','Luna','Lazaro Cardenas','Estado de Mexico'),
('Sofia','Castillo','Miguel Hidalgo','Queretaro'),
('Carla','Palacios','Capuchino','Veracruz'),
('Fabian','Soto','4 poniente','Puebla'),
('Andres','Romero','5 sur','Estado de Mexico'),
('Pedro','Vivanco','10 Oriente','Estado de Mexico'),
('Mario','Moreno','5 Norte','Oaxaca'),
('Fernando','Lopez','2 norte','Puebla'),
('Emmanuel','Hernandez','Hermanos Serdan','Puebla'),
('Dulce','Macias','Lazaro Cardenas','Estado de Mexico'),
('Michel','Allende','Miguel Hidalgo','Queretaro'),
('Marco','Higareda','Capuchino','Guadalajara'),
('Antonio','Flores','San Lorenzo Teotipilco','Estado de Mexico'),
('Darien','Galicia','Avenida Nacional','Oaxaca'),
('Delfina','Montiel','Reforma Norte','Oaxaca'),
('Jonathan','Gonzalez','Avenida Baja California','Veracruz'),
('Emmanuel','Castillo','4 poniente','Veracruz'),
('Jose','Ginez','Juan Escutia','Oaxaca'),
('Antonio','Hilario','Juan de la Barrera','Puebla'),
('Emilio','Bola��os','El riego','Puebla');


-- CIRCUNSTANCIA
INSERT IGNORE INTO circunstancia (Cod_circunstancia, Descripcion) VALUES
('C1','Exceso de velocidad'),
('C2','Falla mec��nica'),
('C3','Condiciones clim��ticas adversas'),
('C4','Conducir bajo los efectos del alcohol'),
('C5','No respetar sem��foro en rojo'),
('C6','Distracci��n del conductor'),
('C7','Mal estado de la carretera'),
('C8','Uso del celular'),
('C9','Invasi��n de carril'),
('C10','Fatiga del conductor'),
('C11','Conducci��n temeraria'),
('C12','Desperfecto en frenos'),
('C13','Falta de se��alamientos viales'),
('C14','No respetar l��mites de velocidad'),
('C15','Rebasar en zona prohibida'),
('C16','Conducir sin precauci��n'),
('C17','Condiciones de poca visibilidad'),
('C18','No respetar l��mites de velocidad'),
('C19','Rebasar en zona prohibida'),
('C20','Conducir sin precauci��n'),
('C21','Condiciones de poca visibilidad'),
('C22','Falta de mantenimiento del veh��culo'),
('C23','Presi��n de neum��ticos inadecuada'),
('C24','Falta de experiencia del conductor'),
('C25','Maniobra evasiva incorrecta'),
('C26','No mantener distancia de seguridad'),
('C27','Conducir en sentido contrario'),
('C28','Sobrecarga del veh��culo'),
('C29','No uso del cintur��n de seguridad'),
('C30','Fallo en el sistema el��ctrico'),
('C31','Derrame de combustible en la v��a'),
('C32','Falta de iluminaci��n p��blica'),
('C33','Condiciones del pavimento resbaladizo'),
('C34','Visibilidad reducida por humo o polvo'),
('C35','Conducir bajo los efectos de drogas'),
('C36','Ignorar instrucciones de tr��nsito'),
('C37','Veh��culo con exceso de pasajeros'),
('C38','Estacionar en zona prohibida'),
('C39','No ceder el paso'),
('C40','Golpe por alcance'),
('C41','Cambio de direcci��n sin se��alizar'),
('C42','Uso inadecuado de luces'),
('C43','No respetar cruce peatonal'),
('C44','Maniobra evasiva incorrecta'),
('C45','No mantener distancia de seguridad'),
('C46','Conducir en sentido contrario'),
('C47','Falta de mantenimiento del veh��culo'),
('C48','Presi��n de neum��ticos inadecuada'),
('C49','Falta de experiencia del conductor'),
('C50','Maniobra evasiva incorrecta')
ON DUPLICATE KEY UPDATE
 Cod_circunstancia = VALUES(Cod_circunstancia);
 
-- ASEGURADO 
INSERT IGNORE INTO asegurado (Agencia, Nombre, Apellidos, Da��os_propios, Recupera_IVA, Direccion, Localidad, Tif, Carta_Verde , Validez_Carta_Verde) 
VALUES
('Zurich','SeguraPlus','Hern��ndez & Asociados','No','No','Calle 1','Guadalajara','TIF100','Null','Null'),
('Zurich','VidaFirme','Lara Consultores','S��','S��','Calle 2','Oaxaca','TIF101','Null','Null'),
('AXA','AutoProtec','Briones Grupo','S��','S��','Calle 3','Puebla','TIF102','Null','Null'),
('Mapfre','SegurTotal','T��llez y Compa����a','S��','S��','Calle 4','Quer��taro','TIF103','Activa','2028-01-31'),
('Zurich','NovaVida','Navarro Holding','No','S��','Calle 5','Guadalajara','TIF104','Null','Null'),
('Zurich','AseguraMax','Velarde Partners','No','No','Calle 6','Guadalajara','TIF105','Null','Null'),
('Mapfre','FortisSeguro','Dom��nguez Group','No','No','Calle 7','CDMX','TIF106','Null','Null'),
('Mapfre','ProVida','Serrano Capital','No','No','Calle 8','Oaxaca','TIF107','Activa','2027-12-11'),
('Qualitas','MediSafe','Palacios Seguros','S��','No','Calle 9','CDMX','TIF108','Null','Null'),
('Qualitas','ProtecAuto','Alfaro Consultora','No','S��','Calle 10','Quer��taro','TIF109','Activa','2027-02-12'),
('Mapfre','AegisMex','Carrillo Brokers','No','No','Calle 11','Puebla','TIF110','Null','Null'),
('AXA','Vitalis','Morales Servicios','S��','S��','Calle 12','Quer��taro','TIF111','Null','Null'),
('AXA','Guardi��n','Duarte Holding','S��','S��','Calle 13','CDMX','TIF112','Null','Null'),
('AXA','IntegriSeg','Casta��eda Risk','No','S��','Calle 14','Quer��taro','TIF113','Null','Null'),
('AXA','FinanSeg','Becerra & C��a','S��','S��','Calle 15','Puebla','TIF114','Activa','2025-07-14'),
('Qualitas','TrustCare','Lozano Asesores','No','No','Calle 16','Oaxaca','TIF115','No','2026-01-07'),
('Mapfre','EuroSeguros','Tapia Inversiones','S��','S��','Calle 17','Oaxaca','TIF116','Activa','2027-12-25'),
('Qualitas','ProFortis','Quiroga Alliance','S��','No','Calle 18','Guadalajara','TIF117','Activa','2026-07-17'),
('Mapfre','MegaAsist','Luj��n Financiera','S��','S��','Calle 19','Oaxaca','TIF118','Activa','2026-09-19'),
('AXA','AseguraOne','Ibarra Global','No','No','Calle 20','Oaxaca','TIF119','Activa','2027-03-22'),
('Qualitas','Solidez','Merino Gestores','No','No','Calle 21','Oaxaca','TIF120','Activa','2025-01-25'),
('Qualitas','FenixVida','Gallardo Finance','No','S��','Calle 22','Oaxaca','TIF121','Activa','2025-03-12'),
('Mapfre','Securitex','Altamirano Group','No','S��','Calle 23','Quer��taro','TIF122','Null','Null'),
('Mapfre','AutoGuardian','Peralta Partners','No','S��','Calle 24','Puebla','TIF123','Null','Null'),
('GNP','MaxProtec','Trujillo Inversiones','No','S��','Calle 25','Puebla','TIF124','Activa','2026-12-01'),
('Qualitas','CoberPlus','Tovar Asistencia','No','No','Calle 26','Quer��taro','TIF125','Activa','2027-10-11'),
('AXA','IntegraSeg','Sandoval Consulting','S��','S��','Calle 27','Guadalajara','TIF126','Activa','2028-09-15'),
('GNP','Conf��aSeguro','Valdez Corporativo','No','No','Calle 28','Oaxaca','TIF127','Activa','2027-03-19'),
('AXA','VidaNet','Montalvo Insurance','S��','No','Calle 29','CDMX','TIF128','Null','Null'),
('AXA','AseguraLink','Esparza Group','No','S��','Calle 30','Guadalajara','TIF129','Null','Null'),
('Qualitas','BlueCare','Fierro & Asociados','S��','S��','Calle 31','Quer��taro','TIF130','Activa','2026-03-06'),
('Zurich','Veritas','Molina Seguros','S��','No','Calle 32','Puebla','TIF131','Null','Null'),
('GNP','Certeza','Cuevas Holdings','No','S��','Calle 33','Guadalajara','TIF132','Null','Null'),
('GNP','AutoPlan','Salgado Capital','S��','S��','Calle 34','CDMX','TIF133','Null','Null'),
('AXA','VidaActiva','Zamora Consulting','S��','S��','Calle 35','Oaxaca','TIF134','Activa','2025-02-04'),
('GNP','MedProtec','Del R��o Global','No','No','Calle 36','Quer��taro','TIF135','Activa','2027-02-10'),
('Qualitas','GlobalTrust','Ayala Partners','S��','S��','Calle 37','Oaxaca','TIF136','Null','Null'),
('AXA','Confianza','Cordero Group','S��','No','Calle 38','Quer��taro','TIF137','Null','Null'),
('GNP','SeguraHoy','Rebollo & C��a','S��','S��','Calle 39','Quer��taro','TIF138','Activa','2025-03-18'),
('GNP','Protecto','Alarc��n Finance','No','No','Calle 40','Quer��taro','TIF139','Activa','2027-03-24'),
('Zurich','VidaMex','Olvera Holdings','S��','S��','Calle 41','Oaxaca','TIF140','Activa','2025-02-02'),
('Mapfre','Fortalec','Pineda Consulting','S��','No','Calle 42','Puebla','TIF141','Activa','2027-02-10'),
('GNP','AsisCare','Trevi��o Brokers','S��','No','Calle 43','Quer��taro','TIF142','Activa','2025-12-14'),
('Mapfre','ProtecLine','Vargas Alliance','No','S��','Calle 44','Quer��taro','TIF143','Null','Null'),
('Mapfre','NovaShield','Camacho Seguros','S��','S��','Calle 45','Quer��taro','TIF144','Null','Null'),
('Mapfre','BioSeguros','Montes Group','S��','S��','Calle 46','Oaxaca','TIF145','Activa','2027-12-07'),
('Zurich','PrimeCare','Beltr��n Capital','No','S��','Calle 47','Guadalajara','TIF146','Activa','2028-02-06'),
('Zurich','SegurCorp','C��rdova Financial','No','No','Calle 48','CDMX','TIF147','Activa','2027-02-15'),
('Qualitas','Valora','Rivera Consultores','S��','No','Calle 49','Puebla','TIF148','Activa','2025-11-01'),
('Mapfre','Asistal','Fajardo Global','S��','S��','Calle 50','Guadalajara','TIF149','Null','Null');

-- ACCIDENTE
INSERT INTO accidente (Fecha, Hora, Da��os_M, Victimas, Lugar, Tif, Nombre)
VALUES
('2025-04-22','14:00:00','Parabrisas roto','2','La concordia','A1B2C3D4','Fabian'),
('2025-06-24','17:45:00','Faros delanteros da��ados','2','Los frailers','E5F6G7H8','Andres'),
('2025-09-12','23:00:00','Faros traseros rotos','2','Mayorazgo','I9J0K1L2','Pedro'),
('2025-02-14','14:00:00','Espejos laterales rotos','2','Av. Juventud','M3N4O5P6','Mario'),
('2025-03-02','17:45:00','Parachoques delantero da��ado','2','Blv. Socorro Romero','Q7R8S9T0','Fernando'),
('2025-06-09','12:20:00','Parachoques trasero da��ado','2','Santa Cecilia','U1V2W3X4','Emmanuel'),
('2025-02-08','18:50:00','Puertas abolladas','2','Santiago Miahutlan','Y5Z6A7B8','Dulce'),
('2025-03-02','09:23:00','Cap�� abollado','2','La Mexico','C9D0E1F2','Michel'),
('2025-03-02','23:00:00','Cajuela da��ada','2','Madero','G3H4I5J6','Marco'),
('2025-06-01','15:29:00','Techo abollado','2','San Sebastian Zinacatepec','K7L8M9N0','Antonio'),
('2025-04-10','17:50:00','Guardabarros da��ados','2','Infonavit','1O1P2Q3R4','Darien'),
('2025-03-11','15:49:00','Llantas pinchadas','2','Tlacotepec','S5T6U7V8','Delfina'),
('2025-02-04','13:30:00','Rines doblados','2','La meseta del riego','W9X0Y1Z2','Jonathan'),
('2025-04-29','14:40:00','Motor averiado','2','El riego','A3B4C5D6','Uriel'),
('2025-04-22','13:50:00','Radiador da��ado','2','El carmen ','E7F8G9H0','Orlando'),
('2025-02-25','17:33:00','Escape roto','2','La colosio','I1J2K3L4','Fatima'),
('2025-06-27','07:00:00','Suspensi��n da��ada','2','El poblado','M5N6O7P8','Victoria'),
('2025-03-07','08:44:00','Volante deformado','2','La purisima','Q9R0S1T2','Daniel'),
('2025-06-01','09:00:00','Airbags desplegados','2','San Pedro Acoquiaco','U3V4W5X6','Lizbeth'),
('2025-09-23','14:22:00','Cristales laterales rotos','2','Las Palmas','Y7Z8A9B0','Jairo'),
('2025-06-28','02:34:00','Luces interiores da��adas','2','La meseta del riego','C1D2E3F4','Saira'),
('2025-09-10','15:32:00','Tablero da��ado','2','El riego','G5H6I7J8','Laura'),
('2025-06-16','21:23:00','Asientos rasgados o da��ados','2','El carmen ','K9L0M1N2','Saira'),
('2025-04-21','14:34:00','Cinturones de seguridad da��ados','2','La concordia','O3P4Q5R6','Gael'),
('2025-02-21','15:54:00','Bater��a da��ada','2','Los frailers','S7T8U9V0','Ander'),
('2025-07-22','21:20:00','Sistema de frenos afectado','2','Mayorazgo','W1X2Y3Z4','Josefina'),
('2025-07-28','20:33:00','Caja de cambios da��ada','1','Av. Juventud','A5B6C7D8','Maricruz'),
('2025-06-29','09:33:00','Sistema de direcci��n afectado','1','Blv. Socorro Romero','E9F0G1H2','Ofelia'),
('2025-06-25','13:33:00','Computadora del veh��culo da��ada','1','Santa Cecilia','I3J4K5L6','Daniela'),
('2025-06-29','14:44:00','Sensor de estacionamiento roto','1','Santiago Miahutlan','M7N8O9P0','Victor'),
('2025-04-20','15:54:00','Sensor de colisi��n da��ado','1','La Mexico','Q1R2S3T4','Omar'),
('2025-09-12','17:55:00','Parabrisas trasero roto','1','Madero','U5V6W7X8','Azucena'),
('2025-09-13','09:20:00','Defensa delantera doblada','1','San Sebastian Zinacatepec','Y9Z0A1B2','Alejandro'),
('2025-03-10','16:03:00','Defensa trasera doblada','1','Infonavit','C3D4E5F6','Alexis'),
('2025-09-12','08:03:00','Spoiler da��ado','1','Tlacotepec','G7H8I9J0','Emilio'),
('2025-04-21','20:33:00','Aler��n roto','2','La meseta del riego','K1L2M3N4','Angel'),
('2025-06-16','02:33:00','Molduras laterales da��adas','2','El riego','O5P6Q7R8','Cesar'),
('2025-02-14','16:33:00','Sistema de climatizaci��n averiado','2','El carmen ','S9T0U1V2','Jesus'),
('2025-06-18','03:33:00','Puertas corredizas atascadas','2','La colosio','W3X4Y5Z6','Javier'),
('2025-03-06','21:33:00','Barras de techo da��adas','2','El poblado','A7B8C9D0','Josue'),
('2025-09-23','14:33:00','Tapicer��a rota','1','La purisima','E1F2G3H4','Marisol'),
('2025-02-08','23:40:00','Faros antiniebla rotos','2','Las Palmas','I5J6K7L8','Monica'),
('2025-02-02','12:20:00','Luces de se��alizaci��n da��adas','2','La meseta del riego','M9N0O1P2','Brisa'),
('2025-09-02','00:44:00','Palanca de cambios averiada','2','El riego','Q3R4S5T6','Mercedez'),
('2025-06-02','01:02:00','Pedales da��ados','2','El carmen ','U7V8W9X0','Maricela'),
('2025-03-13','13:50:00','Sistema de escape suelto','1','La concordia','Y1Z2A3B4','Estela'),
('2025-02-21','17:33:00','Filtro de aire da��ado','2','Los frailers','C5D6E7F8','Andrea'),
('2025-06-25','07:00:00','Caja de fusibles da��ada','2','Mayorazgo','G9H0I1J2','Alicia'),
('2025-06-02','08:44:00','Luces de freno rotas','2','Infonavit','K3L4M5N6','Ester'),
('2025-06-30','12:44:00','Sensor de airbags averiado','2','El riego','O7P8Q9R0','Julia');

-- N:M ACCIDENTE���CIRCUNSTANCIA
INSERT IGNORE INTO accidente_circunstancia (accidente_Numero_accidente, circunstancia_Cod_circunstancia) VALUES
(1,'C25'),
(2,'C24'),
(3,'C23'),
(4,'C22'),
(5,'C7'),
(6,'C2'),
(7,'C2'),
(8,'C29'),
(9,'C21'),
(10,'C1'),
(11,'C21'),
(12,'C21'),
(13,'C21'),
(14,'C21'),
(15,'C12'),
(16,'C11'),
(17,'C10'),
(18,'C1'),
(19,'C16'),
(20,'C17'),
(21,'C18'),
(22,'C19'),
(23,'C21'),
(24,'C21'),
(25,'C21'),
(26,'C21'),
(27,'C21'),
(28,'C21'),
(29,'C21'),
(30,'C21'),
(31,'C21'),
(32,'C21'),
(33,'C33'),
(34,'C24'),
(35,'C23'),
(36,'C22'),
(37,'C21'),
(38,'C2'),
(39,'C2'),
(40,'C29'),
(41,'C1'),
(42,'C12'),
(43,'C29'),
(44,'C32'),
(45,'C21'),
(46,'C21'),
(47,'C12'),
(48,'C50'),
(49,'C50'),
(50,'C51');

-- N:M ACCIDENTE���VEHICULO
INSERT INTO accidente_vehiculo
(accidente_Numero_accidente, vehiculo_MatriBast, `Da��os`, Pto_choque, TipoA_B, N_cir, Observar, Fecha_pres, Imagen)
VALUES
(1,'MAT030','P��rdida total','Lateral derecho','B','5','Parabrisas roto','2025-10-09','accidente_auto_9.jpg'),
(2,'MAT100','P��rdida total','Lateral izquierdo','A','3','Medall��n roto','2025-03-01','accidente_auto_8.jpg'),
(3,'MAT010','Da��os moderados','Frontal','B','1',NULL,'2025-02-22','accidente_auto_7.jpg'),
(4,'MAT06','P��rdida total','Lateral izquierdo','A','2',NULL,'2025-02-13','accidente_auto_6.jpg'),
(5,'MAT066','Da��os leves','Frontal','A','4','Techo rayado','2025-02-13','accidente_auto_5.jpg'),
(6,'MAT015','Da��os moderados','Lateral izquierdo','B','5',NULL,'2025-02-07','accidente_auto_4.jpg'),
(7,'MAT033','Da��os moderados','Lateral izquierdo','B','6','Rines doblados','2025-02-06','accidente_auto_36.png'),
(8,'MAT099','Da��os moderados','Impacto Trasero','A','17',NULL,'2025-09-23','accidente_auto_35.png'),
(9,'MAT038','Da��os moderados','Lateral derecho','A','8','Medall��n rayado','2025-09-22','accidente_auto_34.png'),
(10,'MAT031','Da��os moderados','Impacto Trasero','A','9','Llantas pinchadas','2025-09-09','accidente_auto_33.png'),
(11,'MAT047','Da��os leves','Impacto Trasero','B','10',NULL,'2025-09-01','accidente_auto_32.png'),
(12,'MAT032','Da��os moderados','Lateral derecho','B','1',NULL,'2025-08-30','accidente_auto_31.png'),
(13,'MAT033','Da��os leves','Lateral izquierdo','B','2','Puerta copiloto rayada','2025-08-11','accidente_auto_30.png'),
(14,'MAT084','Da��os moderados','Frontal','A','3',NULL,'2025-07-01',NULL),
(15,'MAT034','P��rdida total','Lateral derecho','A','4',NULL,'2025-02-03',NULL),
(16,'MAT090','P��rdida total','Frontal','A','6','Puerta conductor rayada','2025-07-09',NULL),
(17,'MAT035','Da��os moderados','Frontal','B','7','Puerta conductor rayada','2025-01-01','accidente_auto_14.jpg'),
(17,'MAT060','Da��os moderados','Trasera','A','8','Tablero agrietado','2025-07-01',NULL),
(18,'MAT074','Da��os moderados','Trasera','B','9','Rines doblados','2025-07-01',NULL),
(19,'MAT036','Da��os moderados','Frontal','B','10','Rines doblados','2025-01-01','accidente_auto_13.jpg'),
(20,'MAT078','Da��os leves','Impacto Trasero','A','11','Parabrisas roto','2025-10-19',NULL),
(21,'MAT038','P��rdida total','Frontal','A','12','Chasis deformado','2025-10-23','accidente_auto_3.jpg'),
(22,'MAT037','Da��os moderados','Lateral izquierdo','B','13','Parabrisas roto','2025-10-23','accidente_auto_29.png'),
(23,'MAT021','P��rdida total','Impacto Trasero','A','14','Filtro de aire roto','2025-10-25','accidente_auto_28.png'),
(24,'MAT062','Da��os moderados','Lateral derecho','B','15','Parabrisas roto','2025-10-28','accidente_auto_27.png'),
(25,'MAT024','Da��os moderados','Impacto Trasero','B','16','Parabrisas roto','2025-10-30','accidente_auto_26.png'),
(26,'MAT093','Da��os moderados','Impacto Trasero','A','17',NULL,'2025-11-12','accidente_auto_25.png'),
(27,'MAT098','Da��os moderados','Frontal','A','11',NULL,'2025-04-17',NULL),
(28,'MAT087','P��rdida total','Frontal','A','12','Parabrisas roto','2025-04-04',NULL),
(29,'MAT027','P��rdida total','Frontal','A','13','Medall��n roto','2025-01-01','accidente_auto_15.jpg'),
(30,'MAT071','Da��os moderados','Frontal','B','14',NULL,'2025-03-26',NULL),
(31,'MAT010','P��rdida total','Lateral izquierdo','A','15','Parabrisas roto','2025-01-01','accidente_auto_10.jpg'),
(32,'MAT053','Da��os moderados','Frontal','A','16','Parabrisas roto','2025-03-19','accidente_auto_24.png'),
(33,'MAT067','P��rdida total','Lateral izquierdo','B','17','Parabrisas roto','2025-03-19','accidente_auto_23.png'),
(34,'MAT054','Da��os moderados','Impacto Trasero','B','1','Parabrisas roto','2025-03-12','accidente_auto_22.png'),
(35,'MAT078','Da��os leves','Frontal','A','2','Medall��n roto','2025-03-09','accidente_auto_21.png'),
(36,'MAT079','Da��os leves','Lateral izquierdo','A','3',NULL,'2025-03-01','accidente_auto_20.jpg'),
(37,'MAT076','Da��os leves','Lateral izquierdo','A','4',NULL,'2025-01-12','accidente_auto_2.jpg'),
(38,'MAT069','Da��os moderados','Frontal','B','5',NULL,'1900-01-01','accidente_auto_19.jpg'),
(39,'MAT087','P��rdida total','Lateral derecho','A','6','Puerta copiloto rayada','1900-01-01','accidente_auto_18.jpg'),
(40,'MAT017','P��rdida total','Lateral derecho','B','7',NULL,'1900-01-01','accidente_auto_17.jpg'),
(41,'MAT022','P��rdida total','Lateral derecho','B','8',NULL,'1900-01-01','accidente_auto_16.jpg'),
(42,'MAT007','Da��os moderados','Frontal','A','9',NULL,'2025-01-01',NULL),
(43,'MAT024','P��rdida total','Lateral derecho','A','10','Puerta copiloto rayada','2025-01-01','accidente_auto_15.jpg'),
(44,'MAT041','Da��os leves','Trasera','B','11','Parabrisas roto','2025-01-01','accidente_auto_14.jpg'),
(45,'MAT000','P��rdida total','Frontal','A','12','Parabrisas roto','2025-01-01','accidente_auto_13.jpg'),
(46,'MAT008','Da��os moderados','Lateral derecho','A','15','Puerta conductor rayada','2025-01-01','accidente_auto_12.jpg'),
(47,'MAT089','Da��os leves','Lateral derecho','A','14','Parabrisas roto','2025-01-01','accidente_auto_11.jpg'),
(48,'MAT094','Da��os moderados','Frontal','B','15','Puerta copiloto rayada','2025-01-01','accidente_auto_10.jpg'),
(49,'MAT100','P��rdida total','Lateral izquierdo','A','16','Parabrisas roto','2025-01-01','accidente_auto_1.jpg'),
(50,'MAT122','P��rdida total','Lateral derecho','B','20','Parabrisas roto','2025-08-01','accidente_auto_2.jpg');


-- N:M CONDUCTOR���CATEGORIA
INSERT INTO conductor_categoria 
(conductor_N_Permiso, categoria_Cod_Cat, Fecha_exp, Fecha_validez)
VALUES
(1,  1,  '2025-06-01', '2028-06-01'),
(2,  2,  '2025-06-02', '2028-06-02'),
(3,  3,  '2025-06-03', '2028-06-03'),
(4,  4,  '2025-06-04', '2028-06-04'),
(5,  5,  '2025-06-05', '2028-06-05'),
(6,  6,  '2025-06-06', '2028-06-06'),
(7,  7,  '2025-06-07', '2028-06-07'),
(8,  8,  '2025-06-08', '2028-06-08'),
(9,  9,  '2025-06-09', '2028-06-09'),
(10, 10, '2025-06-10', '2028-06-10'),
(11, 11, '2025-06-11', '2028-06-11'),
(12, 12, '2025-06-12', '2028-06-12'),
(13, 13, '2025-06-13', '2028-06-13'),
(14, 14, '2025-06-14', '2028-06-14'),
(15, 15, '2025-06-15', '2028-06-15'),
(16, 16, '2025-06-16', '2028-06-16'),
(17, 17, '2025-06-17', '2028-06-17'),
(18, 18, '2025-06-18', '2028-06-18'),
(19, 19, '2025-06-19', '2028-06-19'),
(20, 20, '2025-06-20', '2028-06-20'),
(21, 21, '2025-06-21', '2028-06-21'),
(22, 22, '2025-06-22', '2028-06-22'),
(23, 23, '2025-06-23', '2028-06-23'),
(24, 24, '2025-06-24', '2028-06-24'),
(25, 25, '2025-06-25', '2028-06-25'),
(26, 26, '2025-06-26', '2028-06-26'),
(27, 27, '2025-06-27', '2028-06-27'),
(28, 28, '2025-06-28', '2028-06-28'),
(29, 29, '2025-06-29', '2028-06-29'),
(30, 30, '2025-06-30', '2028-06-30'),
(31, 31, '2025-07-01', '2028-07-01'),
(32, 32, '2025-07-02', '2028-07-02'),
(33, 33, '2025-07-03', '2028-07-03'),
(34, 34, '2025-07-04', '2028-07-04'),
(35, 35, '2025-07-05', '2028-07-05'),
(36, 36, '2025-07-06', '2028-07-06'),
(37, 37, '2025-07-07', '2028-07-07'),
(38, 38, '2025-07-08', '2028-07-08'),
(39, 39, '2025-07-09', '2028-07-09'),
(40, 40, '2025-07-10', '2028-07-10'),
(41, 41, '2025-07-11', '2028-07-11'),
(42, 42, '2025-07-12', '2028-07-12'),
(43, 43, '2025-07-13', '2028-07-13'),
(44, 44, '2025-07-14', '2028-07-14'),
(45, 45, '2025-07-15', '2028-07-15'),
(46, 46, '2025-07-16', '2028-07-16'),
(47, 47, '2025-07-17', '2028-07-17'),
(48, 48, '2025-07-18', '2028-07-18'),
(49, 49, '2025-07-19', '2028-07-19'),
(50, 50, '2025-07-20', '2028-07-20');

SET SQL_MODE=@OLD_SQL_MODE;
SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS;
SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS;

# data[].attributes.body
Análisis con python 1

# data[].attributes.body
Script análisis estadístico con python

# data[].attributes.headline
Script para generar los graficos con python

# data[].attributes.subject
Script para generar los graficos con python

# data[].attributes.body
Script para generar los graficos con python

# data[].attributes.headline
Script para hacer el análisis con python

# data[].attributes.subject
Script para hacer el análisis con python

# data[].attributes.body
Script para hacer el análisis con python

# data[].attributes.body
Análisis con python 2