-- Migration pour ajouter la table sectors_adresses -- Cette table stocke les adresses associées à chaque secteur CREATE TABLE IF NOT EXISTS `sectors_adresses` ( `id` int(11) NOT NULL AUTO_INCREMENT, `fk_sector` int(11) NOT NULL, `fk_address` bigint(20) NOT NULL COMMENT 'ID de l''adresse dans la base adresses', `numero` varchar(10) DEFAULT NULL, `voie` varchar(255) DEFAULT NULL, `code_postal` varchar(5) DEFAULT NULL, `commune` varchar(100) DEFAULT NULL, `latitude` decimal(10,8) NOT NULL, `longitude` decimal(11,8) NOT NULL, `created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, PRIMARY KEY (`id`), KEY `idx_sector` (`fk_sector`), KEY `idx_address` (`fk_address`), KEY `idx_code_postal` (`code_postal`), KEY `idx_commune` (`commune`), KEY `idx_coords` (`latitude`, `longitude`), CONSTRAINT `fk_sectors_adresses_sector` FOREIGN KEY (`fk_sector`) REFERENCES `ope_sectors` (`id`) ON DELETE CASCADE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; -- Index pour améliorer les performances des requêtes géographiques CREATE INDEX idx_sectors_adresses_geo ON sectors_adresses (fk_sector, latitude, longitude); -- Commentaire sur la table ALTER TABLE `sectors_adresses` COMMENT = 'Table de liaison entre les secteurs et les adresses géographiques contenues dans leurs périmètres';