File: //opt/kw-schueler.bak.21032025/mysql_add_original_texts.sql
-- SQL-Skript zum Hinzufügen der Originaltexte-Tabellen
USE klausurenweb_db;
-- Neue Tabelle für Originaltexte
CREATE TABLE IF NOT EXISTS original_texts (
id INT AUTO_INCREMENT PRIMARY KEY,
teacher_id INT NOT NULL,
title VARCHAR(255) NOT NULL,
content TEXT NOT NULL,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
FOREIGN KEY (teacher_id) REFERENCES teachers(id) ON DELETE CASCADE
);
-- Tabelle für die Zuordnung von Originaltexten zu Materialien
CREATE TABLE IF NOT EXISTS material_original_texts (
id INT AUTO_INCREMENT PRIMARY KEY,
material_id INT NOT NULL,
original_text_id INT NOT NULL,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
FOREIGN KEY (material_id) REFERENCES materials(id) ON DELETE CASCADE,
FOREIGN KEY (original_text_id) REFERENCES original_texts(id) ON DELETE CASCADE,
UNIQUE KEY (material_id, original_text_id)
);
-- Kommentar: Mit diesem Skript können Originaltexte unabhängig von Materialien gespeichert werden.
-- Ein Originaltext kann zu mehreren Materialien gehören und ein Material kann mehrere Originaltexte haben.
-- Dieses Skript kann mit folgendem Befehl ausgeführt werden:
-- mysql -u username -p < mysql_add_original_texts.sql