Relationaler Textsatz
LaTeX-Dokumente mit SQL-Abfragen
Datenbank und Tabellen
Eine Tabelle, wahlweise in MySQL oder PostgreSQL, stellt die Mindestvoraussetzung dar, um LaTeXDB zu nutzen. Wer noch keine solche Tabelle angelegt hat, kann die Beispieldateien aus dem LaTeXDB-Paket verwenden oder anpassen: Im Verzeichnis latexdb-0.3/examples/ liegen drei Unterverzeichnisse trivial, advanced und nested.
Um das einfachste Beispiel auszuprobieren, wechseln Sie in das Verzeichnis trivial und führen die dortige SQL-Datei aus – unter MySQL erledigt das zum Beispiel der Befehl
mysql -u user -p < example.sql
Dabei ersetzen Sie user durch den User-Namen, mit dem Sie sich an der Datenbank anmelden. Die SQL-Dateien in den übrigen Beispielverzeichnissen setzen voraus, dass die Datenbank mit dem Namen texdb schon existiert – darum sollten Sie dieses TBeispiel in jedem Fall als erstes testen. Wollen Sie die Tabelle lieber von Hand erzeugen, finden Sie im Kasten "Beispiel-Datenbank anlegen" Hinweise dazu.
Beispiel-Datenbank anlegen
Um manuell mit MySQL eine Datenbank anzulegen, starten Sie zunächst den MySQL-Client – ersetzen Sie im folgenden Aufruf user durch den richtigen User-Namen.
# mysql -u user §§ -p Enter password: Welcome to the MySQL monitor.
Mit create database erzeugen Sie eine neue Datenbank; ein anschließender use-Aufruf macht diese zur aktiven Datenbank für die aktuelle MySQL-Sitzung.
mysql> create database texdb; Query OK, 1 row affected (0.00 sec) mysql> use texdb Database changed
Der Befehl create table legt eine neue, leere Tabelle an; insert into fügt einige Beispieleinträge ein.
mysql> create table Users ( id INT PRIMARY KEY, Vorname VARCHAR(40), Nachname VARCHAR(40) ); Query OK, 0 rows affected (0.00 sec) mysql> insert into Users values (1,"Stefan","Mustermann"); Query OK, 1 row affected (0.00 sec) mysql> insert into Users values (2,"Sabine","Sauer"); Query OK, 1 row affected (0.01 sec)
Prüfen Sie mit einem select-Befehl, ob das geklappt hat:
mysql> select * from Users; +—-+————+————+ | id | Vorname | Nachname | +—-+————+————+ | 0 | Stefan | Mustermann | | 1 | Sabine | Sauer | +—-+————+————+ 2 rows in set (0.00 sec)
Sie können den Mysql-Client dann verlassen.
LaTeXDB testen
Haben Sie die Beispieltabelle angelegt, bearbeiten Sie die zugehörige Tex-Datei (hier: example.tex) – im \texdbconnection-Kommando stehen noch nicht die richtigen Zugangsdaten zur Datenbank. Nachdem Sie diese Zeile angepasst haben, rufen Sie LaTeXDB genau wie LaTeX auf, wahlweise mit DVI- oder PDF-Ausgabe:
latexdb example.tex pdflatexdb example.tex
Der erste Aufruf erzeugt example.dvi, der zweite example.pdf. Die Ausgabe im Terminalfenster ist im Wesentlichen identisch mit der eines normalen LaTeX- bzw. PDFLaTeX-Aufrufs; die Anwesenheit von LaTeXDB bemerken Sie nur an der ersten Ausgabezeile:
Pre-Compiling example.tex (loop 1)
Abbildung 1 zeigt die auf diese Weise erzeugte, einfache DVI-Datei.
LaTeXDB erzeugt eine Reihe von Zwischendateien, die Sie später entsorgen können; zu example.tex entstehen unter anderem example.tex.i
, example.tex.pre.i
und example.tex.texdb.i
, wobei i ein Zähler ist und meist nur den Wert 1 annimmt.



