Weitere Funktionen zum Umgang mit Datenbanken (Erzeugen, Löschen) und Tabellen (Erzeugen, Löschen) …
Zum Beispiel für das Erzeugen einer neuen Datenbank
$dbname=“blumendb“;
if (mysql_create_db($dbname, $verbindung)) { … } oder auch über eine SQL-Anweisung:
$sql = “CREATE DATABASE $dbname“;
if (mysql_query($sql, $verbindung)) { …. }
Löschen per mysql_dropdb() oder per SQL-Anweisung “DROP DATABASE $dbname“
PHP- Umgang mit Datenbanken (1)
Erzeugen einer neuen Tabelle nur per SQL-Anweisung:
$tablename=“blumentab“;
$sql = “CREATE TABLE $tablename (nummer INT, name VARCHAR (50), gattung_nr INT)“;
if (mysql_query($sql, $verbindung)) { …. }
Beim Erzeugen muss das Tabellenformat vorgegeben werden.
Das Löschen einer Tabelle kann nur über eine SQL-Anweisung erfolgen (keine PHP-Funktion):
$tablename=“blumentab“;
$sql = “DROP TABLE $tablename“;
if (mysql_query($sql, $verbindung)) { …. }
PHP-Umgang mit Datenbanken (2)
ODBC (1)
Open Data Base Connectivity
Der Zugriff auf eine relationale Datenbank erfolgt auf einer Windows- Plattform in der Regel über die Standardschnittstelle Open Data Base Connectivity (ODBC).
Mit Hilfe von ODBC kann der Zugriff eines Client auf einen Datenbank- Server erfolgen, wenn der Zugriff in der Sprache SQL kodiert ist. Dabei kann auch der Server zu verschiedenen DBMS-Produkten gehören.
In der ODBC-Schnittstelle werden die konkreten
Verbindungsinformationen abgelegt. Diese werden in eine dsn-Datei geschrieben (dsn – Data Source Name).
Dazu gehören vor allem die Treiber für das jeweilige DBMS. Aber auch der Name und die Pfadangaben der Datenbank werden dazu mit
benötigt.
Prinzipielle Architektur einer ODBC-Schnittstelle
ODBC (2)
ODBC-Schnittstelle
Applikation (Client)
ODBC Manager
ODBC Treiber
Applikation (Server)
Im Prinzip kann so auf jede DB zugegriffen werden,
für die ein ODBC Treiber verfügbar ist.
Einrichten einer ODBC-Schnittstelle:
Auf einer Windows-Plattform erreicht man den ODBC- Datenquellen- Administrator (Manager) über das Menü Systemsteuerung ->
Verwaltung.
Durch einen Doppelklick auf Datenquellen (ODBC) wird der ODBC- Datenquellen-Administrator geöffnet. Im Fenster ist das Register System-DSN auszuwählen und die Schaltfläche „Hinzufügen“ zu betätigen.
Eine System-DSN ist immer zu wählen, wenn ein Zugriff über ein Rechnernetz erfolgt. Befindet sich Client und Server auf einem
Rechner, ist das Register Benutzer-DSN auszuwählen. Im Fenster
„Neue Datenquelle erstellen“ ist der entsprechende DB-Treiber (zum Beispiel MS-ACCESS) auswählen und Taste „Fertigstellen“ betätigen.
ODBC (3)
Einrichten einer ODBC-Schnittstelle in Bildern:
ODBC (4)
Auswahl Treiber
Benennung der Schnittstelle und Verbindung mit einer Datenbank, hier db_bsp.mdb
Einrichten einer ODBC-Schnittstelle in Bildern:
ODBC (5)
Übersicht über Datenquellen
Verbinden mit einer ODBC-Datenquelle per PHP:
$dsn = “dat“;
$user = “administrator“;
$pw = ““;
$verbindung = odbc_connect($dsn,$user,$pw);
$sql = “SELECT * FROM orte“;
$ergebnis = odbc_exec($verbindung, $sql);
odbc_result_all($ergebnis);
odbc_free_result($ergebnis);
odbc_close($verbindung);
PHP und ODBC (1)
Datenquellenname aus Systemsteuerung
odbc_result_all() holt das gesamte Ergebnis der Abfrage und gibt es formatiert als HTML-
Schrittweises Auslesen einer ODBC-Datenquelle per PHP:
…
$verbindung = odbc_connect($dsn,$user,$pw);
$sql = “SELECT * FROM orte“;
$ergebnis = odbc_exec($verbindung, $sql);
echo “<table>“
while( odbc_fetch_into($ergebnis, $daten) ) { echo “<tr>“;
for ($i=0;$i<count($daten);$i++) echo “<td>“.$daten[$i].“</td>“;
echo “</tr>\n“;
}
echo “</table>“;
PHP und ODBC (2)
odbc_fetch_into() holt eine Ergebniszeile und speichert sie als Array.
Beim folgenden Aufruf wird jeweils die nächste
In $ergebnis wird ein Verweis auf alle
Ergebnisse, sowie ein Zeiger auf die jeweils nächste Ergebniszeile gespeichert