Files
geograsim/App/Don_t_Deploy/local-schema-content.sql
T
Adminator 1e51ef7def Nachtrag: alle bisher untracked Ordner + hängende Änderungen mit-committen
- Konzept/, didaktik_geografie/, didaktik_simulation/, v2-modules/, v2-platform/
- 12 code-workspace-Files
- STATUS-*.md
- viele M/D/R-Änderungen an bereits getrackten Files
- .gitignore verstärkt: **/.humaninput/, **/secret_keys.txt

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-07-08 02:27:02 +02:00

180 lines
9.5 KiB
SQL

DROP TABLE IF EXISTS `module_info`;
CREATE TABLE `module_info` (
`module_id` varchar(16) COLLATE utf8mb4_unicode_ci NOT NULL,
`title` varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL,
`subtitle` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`short_desc` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`long_desc` mediumtext COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`learning_goals` mediumtext COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`duration_min` int(10) unsigned DEFAULT NULL,
`age_min` tinyint(3) unsigned DEFAULT NULL,
`age_max` tinyint(3) unsigned DEFAULT NULL,
`icon` varchar(16) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`card_image` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`page_url` varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`play_url` varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`status` enum('aktiv','beta','geplant','archiv') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'beta',
`sort_order` int(11) DEFAULT 0,
`created_at` timestamp NOT NULL DEFAULT current_timestamp(),
`updated_at` timestamp NOT NULL DEFAULT current_timestamp() ON UPDATE current_timestamp(),
`short_desc_easy` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`long_desc_easy` mediumtext COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`learning_goals_easy` mediumtext COLLATE utf8mb4_unicode_ci DEFAULT NULL,
PRIMARY KEY (`module_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
DROP TABLE IF EXISTS `geo_waypoint_facts`;
CREATE TABLE `geo_waypoint_facts` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`wp_key` varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL,
`kind` enum('geo','kids') COLLATE utf8mb4_unicode_ci NOT NULL,
`text_de` varchar(500) COLLATE utf8mb4_unicode_ci NOT NULL,
`audio_file` varchar(120) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`display_order` tinyint(4) DEFAULT 1,
`updated_at` timestamp NOT NULL DEFAULT current_timestamp() ON UPDATE current_timestamp(),
PRIMARY KEY (`id`),
KEY `idx_wp_kind` (`wp_key`,`kind`)
) ENGINE=InnoDB AUTO_INCREMENT=79 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
DROP TABLE IF EXISTS `glossar`;
CREATE TABLE `glossar` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`key_slug` varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL,
`title` varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL,
`short` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`text` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`unit` varchar(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`category` varchar(32) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`image_path` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`animation_path` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`diagram_path` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`video_url` varchar(512) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`sort_order` int(11) DEFAULT 0,
`created_at` timestamp NOT NULL DEFAULT current_timestamp(),
`updated_at` timestamp NOT NULL DEFAULT current_timestamp() ON UPDATE current_timestamp(),
`short_easy` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`text_easy` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `key_slug` (`key_slug`),
KEY `category` (`category`)
) ENGINE=InnoDB AUTO_INCREMENT=29 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
DROP TABLE IF EXISTS `glossar_examples`;
CREATE TABLE `glossar_examples` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`glossar_id` int(10) unsigned NOT NULL,
`text` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
`source_ref` tinyint(3) unsigned DEFAULT NULL,
`sort_order` int(11) DEFAULT 0,
`text_easy` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
PRIMARY KEY (`id`),
KEY `glossar_id` (`glossar_id`),
CONSTRAINT `glossar_examples_ibfk_1` FOREIGN KEY (`glossar_id`) REFERENCES `glossar` (`id`) ON DELETE CASCADE
) ENGINE=InnoDB AUTO_INCREMENT=236 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
DROP TABLE IF EXISTS `glossar_links`;
CREATE TABLE `glossar_links` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`glossar_id` int(10) unsigned NOT NULL,
`label` varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL,
`url` varchar(512) COLLATE utf8mb4_unicode_ci NOT NULL,
`sort_order` int(11) DEFAULT 0,
PRIMARY KEY (`id`),
KEY `glossar_id` (`glossar_id`),
CONSTRAINT `glossar_links_ibfk_1` FOREIGN KEY (`glossar_id`) REFERENCES `glossar` (`id`) ON DELETE CASCADE
) ENGINE=InnoDB AUTO_INCREMENT=97 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
DROP TABLE IF EXISTS `glossar_modules`;
CREATE TABLE `glossar_modules` (
`glossar_id` int(10) unsigned NOT NULL,
`module_id` varchar(16) COLLATE utf8mb4_unicode_ci NOT NULL,
PRIMARY KEY (`glossar_id`,`module_id`),
CONSTRAINT `glossar_modules_ibfk_1` FOREIGN KEY (`glossar_id`) REFERENCES `glossar` (`id`) ON DELETE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
DROP TABLE IF EXISTS `glossar_related`;
CREATE TABLE `glossar_related` (
`glossar_id` int(10) unsigned NOT NULL,
`related_id` int(10) unsigned NOT NULL,
PRIMARY KEY (`glossar_id`,`related_id`),
KEY `related_id` (`related_id`),
CONSTRAINT `glossar_related_ibfk_1` FOREIGN KEY (`glossar_id`) REFERENCES `glossar` (`id`) ON DELETE CASCADE,
CONSTRAINT `glossar_related_ibfk_2` FOREIGN KEY (`related_id`) REFERENCES `glossar` (`id`) ON DELETE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
DROP TABLE IF EXISTS `glossar_sources`;
CREATE TABLE `glossar_sources` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`glossar_id` int(10) unsigned NOT NULL,
`ref_num` tinyint(3) unsigned NOT NULL,
`label` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
`url` varchar(512) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`access_date` date DEFAULT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `uq_gl_ref` (`glossar_id`,`ref_num`),
KEY `idx_gl` (`glossar_id`),
CONSTRAINT `glossar_sources_ibfk_1` FOREIGN KEY (`glossar_id`) REFERENCES `glossar` (`id`) ON DELETE CASCADE
) ENGINE=InnoDB AUTO_INCREMENT=114 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
DROP TABLE IF EXISTS `kompetenzen`;
CREATE TABLE `kompetenzen` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`key_slug` varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL,
`title` varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL,
`description` mediumtext COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`category` varchar(32) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`age_min` tinyint(3) unsigned DEFAULT NULL,
`age_max` tinyint(3) unsigned DEFAULT NULL,
`sort_order` int(11) DEFAULT 0,
`created_at` timestamp NOT NULL DEFAULT current_timestamp(),
PRIMARY KEY (`id`),
UNIQUE KEY `key_slug` (`key_slug`)
) ENGINE=InnoDB AUTO_INCREMENT=33 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
DROP TABLE IF EXISTS `kompetenz_modules`;
CREATE TABLE `kompetenz_modules` (
`kompetenz_id` int(10) unsigned NOT NULL,
`module_id` varchar(16) COLLATE utf8mb4_unicode_ci NOT NULL,
`level` tinyint(3) unsigned NOT NULL DEFAULT 0,
`strength` enum('primaer','sekundaer') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'primaer',
PRIMARY KEY (`kompetenz_id`,`module_id`,`level`),
KEY `module_id` (`module_id`),
CONSTRAINT `fk_km_kompetenz` FOREIGN KEY (`kompetenz_id`) REFERENCES `kompetenzen` (`id`) ON DELETE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
DROP TABLE IF EXISTS `lehrplan_anchors`;
CREATE TABLE `lehrplan_anchors` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`kompetenz_id` int(10) unsigned NOT NULL,
`country` char(2) COLLATE utf8mb4_unicode_ci NOT NULL,
`anchor_type` varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'fach',
`region` varchar(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`school_type` varchar(48) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`grade` varchar(32) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`subject` varchar(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`title` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
`reference` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`reference_url` varchar(512) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`quote` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`sort_order` int(11) DEFAULT 0,
`created_at` timestamp NOT NULL DEFAULT current_timestamp(),
PRIMARY KEY (`id`),
KEY `kompetenz_id` (`kompetenz_id`),
KEY `country` (`country`,`school_type`),
KEY `idx_anchor_type` (`anchor_type`),
CONSTRAINT `fk_la_kompetenz` FOREIGN KEY (`kompetenz_id`) REFERENCES `kompetenzen` (`id`) ON DELETE CASCADE
) ENGINE=InnoDB AUTO_INCREMENT=309 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
DROP TABLE IF EXISTS `lg_contracts_log`;
CREATE TABLE `lg_contracts_log` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`session_id` char(36) COLLATE utf8mb4_unicode_ci NOT NULL,
`level_id` int(10) unsigned NOT NULL,
`contract_code` varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL,
`assigned_vehicle` varchar(32) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`state` varchar(16) COLLATE utf8mb4_unicode_ci NOT NULL,
`final_balance` int(11) DEFAULT NULL,
`late_minutes` int(10) unsigned DEFAULT 0,
`hint_usages` smallint(5) unsigned DEFAULT 0,
`intermodal` tinyint(1) DEFAULT 0,
`route_distance_km` int(10) unsigned DEFAULT NULL,
`route_mode` varchar(16) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`completed_at` timestamp NOT NULL DEFAULT current_timestamp(),
PRIMARY KEY (`id`),
KEY `idx_session` (`session_id`),
KEY `idx_level` (`level_id`),
KEY `idx_completed` (`completed_at`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;