CREATE TABLE name ( felddefinitionen ) optionale parameter
Der Parameter name steht dabei für den Namen der Tabelle und die runden Klammern nehmen die Parameter für die Feldelemente der Tabelle auf. In Abb. 1.47 werden die drei Felder ID, Name und Menge definiert. Eine Definitionszeile für ein Feld besitzt folgenden Aufbau:
feldname typ NOT NULL default '..',
Zuerst kommt der Feldname, der aus gültigen Zeichen bestehen muss. Daran schließt sich der Datentyp (int(x), text, float (x,y) etc.) für das Feld an. Die zulässigen Datentypen hängen von der verwendeten Datenbank ab. Je nach Datentyp werden die Dezimalstellen und Nachkommastellen in Klammern mit angegeben. Die Angabe NOT NULL ist optional und definiert, dass der Wert nicht Null sein darf. Zudem lässt sich ein Vorgabewert über den Parameter default '..' angeben. Der Standardwert ist in Hochkommas zu setzen. Weitere Optionen wie AUTO_INCREMENT können festlegen, dass der Wert automatisch erhöht wird. Die Felddefinitionen werden jeweils durch Kommas voneinander getrennt.
Besitzt die Tabelle einen Schlüssel, lässt sich dieser am Ende der Felddefinition über das Schlüsselwort KEY vereinbaren. Hinter dem Schlüsselwort wird der Schlüsselname und in Klammern das zu verwendende Feld angegeben. Je nach verwendeter Datenbank können hinter der schließenden Klammer für die Felddefinition weitere datenbankspezifische Parameter folgen. In Abb. 1.47 wurden der Dateityp - in MySQL werden meist ISAM-Dateien (für "`Index Sequential Access Method"') zur Speicherung der Tabellen benutzt - und ein Kommentar hinterlegt.
Hinweis: SQL-Befehle können im "`Freistil"' eingegeben werden, d.h., Groß-/Kleinschreibung ist nicht relevant. Sie können den Befehl auch auf mehrere Zeilen aufteilen oder in einer langen Zeile eintippen. Lediglich die Syntax der Anweisung ist strikt vorgegeben und wird durch den SQL-Parser der Datenbank ausgewertet. Tritt in der Syntax ein Fehler auf, wird der Befehl abgelehnt und eine Statusmeldung zurückgegeben. Manche SQL-Clients (z.B. der Linux-Befehl mysql) erfordern diesen Abschluss des SQL-Befehls mit einem Semikolon, um das Kommando an den SQL-Parser abzusenden. In Base ist dieses Semikolon aber nicht erforderlich und wird daher in den folgenden Beispielen weggelassen.
Mit folgendem SQL-Befehl entfernen Sie eine komplette Tabelle aus der Datenbank:
DROP TABLE \textit{tabellenname}
Die folgende SQL-Anweisung entfernt die komplette Tabelle BornTest samt den darin gespeicherten Daten aus der Datenbank - Sie sollten daher mit diesem Befehl sehr vorsichtig umgehen:
DROP Table BornTest