PHP/Datenbanken anlegen und löschen
Aus Mikiwiki
< PHP
Das folgende Skript "mysql_createdb.php" zeigt das Anlegen und anschliessende Löschen einer temporären Datenbank.
|
<?php ## Name mysql_createdb.php include("open.inc.php"); function show_dbs($connection) { ## Ermittlung aller Datenbanken $result = mysql_list_dbs($connection); $i = 0; echo "<p><b>Datenbanken</b>:<br />\n"; ## Extraktion der Tabellennamen while ($i < mysql_num_rows ($result)) { $tablenames[$i] = mysql_tablename ($result, $i); echo $tablenames[$i] . "<br />\n"; $i++; } } ## Schickt Abfrage an die Datenbank function sql_query($success, $sql, $connection) { $result = mysql_query($sql, $connection); if ($result) { echo "<p>$success.</p>\n"; } else { echo "<p>" . mysql_error($connection) . "</p>\n"; } return $result; } ## Anlegen der Datenbank "temporaer" $result = mysql_query("CREATE DATABASE temporaer", $connection); if ($result) { echo "<p>Datenbank angelegt.</p>\n"; } else { echo "<p>" . mysql_error($connection) . "</p>\n"; } show_dbs($connection); ## Wechsel in die Datenbank "temporaer" $sql = "USE temporaer"; sql_query("Wechsel in die Datenbank 'temporaer'", $sql, $connection); ## Anlegen der Tabelle "temp" $sql = "CREATE TABLE temp (sessions VARCHAR(50) NOT NULL)"; sql_query("Tabelle temp erzeugt", $sql, $connection); ## Einfügen von Daten $sql = "INSERT INTO temp (sessions) VALUES ('1234567')"; sql_query("Session ID eingefügt", $sql, $connection); ## Abfrage der Daten $sql = "SELECT * FROM temp"; $result = sql_query("Session IDs anzeigen", $sql, $connection); if ($result) { $number = mysql_num_rows($result); echo "<p>Es ist $number Datensatz gelesen worden: "; while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) { echo implode("|", $row); } } ## Löschen der Datenbank "temporaer" $result = mysql_query("DROP DATABASE temporaer", $connection); show_dbs($connection); mysql_close($connection); ?> |
Mit folgenden SQL-Befehlen können Datenbankbestandteile gelöscht werden.
| DROP DATABASE <Datenbankname> | Löschen einer Datenbank. |
| DROP TABLE <Tabellenname> | Vollständiges löschen einer Tabelle. |
| DELETE FROM <Tabellenname> | (ohne "WHERE"-Bedingung) Löschen aller Datensätze einer Tabelle. |
| TRUNCATE TABLE <Tabellenname> | Löschen aller Datensätze einer Tabelle (schneller als "DELETE"). |
