WebImpressionen
Create Table

Erstellen von Tabellen mit CREATE TABLE

Eine Tabelle organisiert die Informationen in Zeilen und Spalten.
Die SQL-Anweisung CREATE TABLE wird zum Erstellen einer Tabelle in der Datenbank verwendet.


Erstellen einer SQL-Abfrage mit der Anweisung-CREATE TABLE.
Abfrage ausführen, indem sie an die php-Funktion "mysqli-query" übergeben wird,
um schließlich eine Tabelle zu erstellen.

Beispiel 1: 1ne Tabelle wird erstellt.

 
<?php
// Verbindung zur Datenbank einfügen
1
$sql = " CREATE TABLE `personen` (
2
`id` INT(11) NOT NULL PRIMARY KEY AUTO_INCREMENT ,
3
`vor_name` VARCHAR(30) NOT NULL ,
4
`name` VARCHAR(30) NOT NULL ,
5
`email` VARCHAR(70) NOT NULL UNIQUE
6
)";
7
if ( mysqli_query ( $link, $sql )) {
8
echo " Tabelle erfolgreich erstellt. ";
9
} else {
10
echo " FEHLER: " . $sql . " konnte nicht ausgeführt werden. " . mysqli_error ( $link );
11
}
12
mysqli_close ( $link ) ;
 
?>
 
<?php
// Verbindung zur Datenbank einfügen
1
$sql = " CREATE TABLE `personen` (
2
`id` INT(11) NOT NULL PRIMARY KEY AUTO_INCREMENT ,
3
`vor_name` VARCHAR(30) NOT NULL ,
4
`name` VARCHAR(30) NOT NULL ,
5
`email` VARCHAR(70) NOT NULL UNIQUE
6
)";
7
if ( $mysqli -> query ( $sql ) === true) {
8
echo " Tabelle erfolgreich erstellt. ";
9
} else {
10
echo " FEHLER: " . $sql . " konnte nicht ausgeführt werden. " . $mysqli -> error ;
11
}
12
$mysqli -> close () ;
 
?>

Bei CREATE TABLE wurde das ID-Feld mit dem AUTO_INCREMENT-Flag markiert.
Dieser Modifikator weist MySQL an, diesem Feld automatisch einen Wert zuzuweisen, der den vorherigen Wert um 1 erhöht, wenn er nicht angegeben wird.

2 oder mehr Tabellen mit php erstellen

Abfrage ausführen, indem sie an die php-Funktion "mysqli-multi-query" übergeben wird,
um schließlich mehrere Tabellen zu erstellen.

Beispiel 2: 2 Tabellen werden erstellt.

 
<?php
// Verbindung zur Datenbank einfügen
1
$sql = " CREATE TABLE `personen` (
2
`id` INT(11) NOT NULL PRIMARY KEY AUTO_INCREMENT ,
3
`vor_name` VARCHAR(30) NOT NULL ,
4
`name` VARCHAR(30) NOT NULL ,
5
`email` VARCHAR(70) NOT NULL UNIQUE
6
)";
7
$sql .= " CREATE TABLE `users` (
8
`id` INT(11) NOT NULL PRIMARY KEY AUTO_INCREMENT ,
9
`username` VARCHAR(50) NOT NULL ,
10
`password` VARCHAR(255) NOT NULL ,
11
`datum` INT(12) UNSIGNED NOT NULL
12
)";
13
if ( mysqli_multi_query ( $link, $sql )) {
14
echo " Tabellen erfolgreich erstellt. ";
15
} else {
16
echo " FEHLER: " . $sql . " konnte nicht ausgeführt werden. " . mysqli_error ( $link );
17
}
18
mysqli_close ( $link ) ;
 
?>
 
<?php
// Verbindung zur Datenbank einfügen
1
$sql = " CREATE TABLE `personen` (
2
`id` INT(11) NOT NULL PRIMARY KEY AUTO_INCREMENT ,
3
`vor_name` VARCHAR(30) NOT NULL ,
4
`name` VARCHAR(30) NOT NULL ,
5
`email` VARCHAR(70) NOT NULL UNIQUE
6
)";
7
$sql .= " CREATE TABLE `users` (
8
`id` INT(11) NOT NULL PRIMARY KEY AUTO_INCREMENT ,
9
`username` VARCHAR(50) NOT NULL ,
10
`password` VARCHAR(255) NOT NULL ,
11
`datum` INT(12) UNSIGNED NOT NULL
12
)";
13
if ( $mysqli -> multi_query ( $sql ) === true) {
14
echo " Tabellen erfolgreich erstellt. ";
15
} else {
16
echo " FEHLER: " . $sql . " konnte nicht ausgeführt werden. " . $mysqli -> error ;
17
}
18
$mysqli -> close () ;
 
?>

Mit "mysqli-multi-query" können nicht nur 2 sondern auch mehr als 10 Tabellen in einem schritt angelegt werden.
Wichtig ist nur ab der zweiten
Tabelle: $sql. = " CREATE ......

anstatt: $sql = " CREATE ......