001_create_maps_table.sql 1.2 KB

123456789101112131415161718192021
  1. -- Migration: Création de la table maps
  2. -- Date: 2025-10-12
  3. -- Description: Table pour stocker les cartes hexagonales avec métadonnées et chemin vers le fichier JSON
  4. CREATE TABLE IF NOT EXISTS `maps` (
  5. `id` INT AUTO_INCREMENT PRIMARY KEY,
  6. `name` VARCHAR(255) NOT NULL COMMENT 'Nom de la carte',
  7. `description` TEXT COMMENT 'Description optionnelle de la carte',
  8. `width` INT NOT NULL DEFAULT 10 COMMENT 'Largeur de la carte en hexagones',
  9. `height` INT NOT NULL DEFAULT 10 COMMENT 'Hauteur de la carte en hexagones',
  10. `data` JSON COMMENT 'Données sérialisées de la carte (statistiques, métadonnées)',
  11. `file_path` VARCHAR(500) COMMENT 'Chemin vers le fichier JSON stocké',
  12. `created_at` TIMESTAMP DEFAULT CURRENT_TIMESTAMP COMMENT 'Date de création',
  13. `updated_at` TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 'Date de dernière modification',
  14. -- Index pour optimiser les recherches
  15. INDEX `idx_name` (`name`),
  16. INDEX `idx_created_at` (`created_at`),
  17. INDEX `idx_width_height` (`width`, `height`)
  18. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci
  19. COMMENT='Table des cartes hexagonales du générateur de cartes';