# Tutorial 2: Tabellen "manuell" erstellen

ACHTUNG: Das Tabellen-Format hat in 0.1.3-Alpha-02 und 0.1.5-Alpha-01 geändert!

Wenn man neue Tabellen nicht immer mit einem CREATE TABLE Aufruf erstellen möchte, so
kann man dies auch "von Hand" tun.

## 1. Text Datei erstellen

Als erstes ist eine Text Datei (Endung .txt) zu erstellen.
Datei > Neu > Textdokument (oder so ähnlich)

## 2. Spalten definieren (1. Zeile)

In der ersten Zeile der Text Datei sind die Namen der Spalten niederzuschreiben.
Dabei wird jeder Spaltenname mit einem # beendet.

Beispiel:

    Nr#Name#Vorname#Adresse#Alter

## 3. Datentypen definieren (2. Zeile)

Im gleichen Format wie oben ist nun der Datentyp für jede Spalte zu definieren.
Welche Datentypen momentan unterstütz werden sieht man hier.

Die 2. Zeile könnte etwa so aussehen:

    inc#str#str#str#int

## 4. Standardwerte definieren (3. Zeile)

Im gleichen Format wie oben ist nun für jede Spalte ein Standartwert festzulegen.
Dieser wird verwendet wenn man bei INSERT Statements nicht alle Spalten angibt.

Die 3. Zeile könnte etwa so aussehen:

    0#Standard Name#Standard Vorname#Keine Adresse#40

## 5. (Freiwillig) Daten eingeben

Im gleichen Format wie oben können nun bei Bedarf bereits einige Daten (zB für Testzwecke) eingegeben werden.
Die fertige Tabellen-Datei könnte dann so aussehen:

    Nr#Name#Vorname#Adresse#Alter
    inc#str#str#str#int
    0#Standard Name#Standard Vorname#Keine Adresse#40
    0#Hans#Wurst#Wurststrasse 9#40
    1#Maxx#Test#Teststrasse 1#22

## 6. Berechtigungen setzten

Auf der neu erstellen Datei sind nun noch die Berechtigungen zu setzten. Dies ist mit den meisten FTP-Clients möglich!
Am besten macht man gleich ein chmod 777.
Damit die Datenbank-Dateien nicht mit dem Browser direkt angesehen werden können, ist es empfehlenswert die .htaccess Datei entsprechend zu verändern, dass mit GET und POST kein Zugriff auf die Txt-Dateien möglich ist.

## 7. Weiteres / Hinweise

Falls man ein % oder # als Teil des Spaltennamens oder als Teil der Daten verwenden möchte, ist anstelle von "%" "%p" zu schreiben, und anstelle von "#" ein "%h". Dies ist nötig, da # und % eine spezielle Bedeutung haben. Ansonsten braucht man sich darum aber NIE (auch bei CREATE TABLE Statements nicht) zu kümmern (# und % werden automatisch umgewandelt), sondern nur dann, wenn man Werte direkt im Text-File eingibt. Und das #-Zeichen, das wie oben beschrieben die Spaltennamen und Datentypen voneinander trennt, ist natürlich nicht als %h zu schreiben.

Beispiele:

    nr#link
    inc#str
    ##
    1#http://www.abc.de/index.htm%hanker
    2#http://www.abc.de/start.htm%habsatz2

    nr#person#rabatt
    inc#str#str
    ##10%p
    1#müller#5%p
    2#maier#7,5%p