SQL Die meisten Datenbanken verwenden zur Verwaltung und Abfrage der Datenbank eine standardisierte Abrfagesprache namens SQL (Structured Query Language). MySQL ist eine dieser Datenbanken, die weitgehend den Standard ANSI SQL92 (Entry Level) bedient. Wie bei professionellen Datnebanken üblich ist MySQL zunächst erst einmal nur eine Datenbankengine, auf die verschiedene Frontends (grafische Darstellungen Datenbank und ihrer Inhalte) aufgesetzt werden können. Mit Hilfe des Frontends lässt sich die Datenbank dann verwalten und abfragen. Hier ein paar Beispiele für MySQL-Frontends:
Zusammenspiel von PHP und MySQL Verbindungsaufbau mit der Datenbank MySQL wird natürlich durch die Abfragesprache SQL abgefragt. In PHP existiert eine Bibliothek mit Kommandos, die es erlauben, SQL Befehle auszuführen. Bevor das aber möglich ist muß sich PHP zunächst
Drei Schritte zur MySQL-Abfrage: $db = mysql_connect("xy.uni-lukiel:3306", „account“, „pw“); mysql_select_db(„meineDatenbank“, $db); $result = mysql_query($mysqlAbfrage,$db); Dies muß zu Beginn jeder PHP-Seite geschehen, auf der auf die Datenbank zugegriffen werden soll. Wenn sich die Serverdaten ändern, würde das bedeuten, daß alle Seiten korrigiert werden müßten. Daher empfielt sich ein Auslagern der wichtigsten Variablen in eine Config-Datei, die dann in jede Seite eingebunden wird. Das Ändern in dieser Config-Datei hat dann Auswirkungen auf das gesamte Projekt. Die Config-Datei: $DbServer = "xy.uni-lukiel:3306"; # MySQL-Server $DbServerPort = "3306"; # Port $Db = "meineDatenbank"; # Datenbank $DbServerUsername = "account"; # Benutzername $DbServerPassword = "pw"; # Passwort Das Einbinden der Config-Datei in jedes PHP-Dokument mit Datenbankabfrage würde dann lediglich so aussehen: include("../inc/config.php"); Was ist PHP, was SQL? Der PHP Teil der Abrage ist folgender: $result = mysql_query($mysql,$db); $mysql ist eine einfache Stringvariable. In diese Variable wird die SQL-Abfrage geschrieben: $mysql = „select * from tabelle“; Es ist auch die Einbettung von SQL Abfragen in den PHP-Code möglich: $result = mysql_query(„select * from tabelle“,$db); In vielen Frontends ist es möglich reine SQL-Abfragen (also nur „select * from tabelle“) einzugeben und ausführen zu lassen. Das ist manchmal hilfreich, um zu erfahren ob die SQL-Abfrage oder der PHP-Code einen Fehler verursacht. Basisbefehle SQL ist aber nicht nur eine Abfragesprache (Query Language), sondern auch eine Manipulationssprache (Data Manipulation Language, DML) zur Speicherung und Veränderung von Informationen und eine Beschreibungssprache (Data Description Language, DDL) zur Definition von Informationstrukturen. (Diemer 1985:18) Also ist es möglich mit PHP ein vollständiges Frontend für MySQL zu entwickeln (wie PHPMyAdmin das tut). Befehle für die Datenbank
Befehle für die Tabelle
PRIMARY KEY (id) Der Primärschlüssel dient zum Auffinden eines Datensatzes in einer Tabelle (id). Er muß
Daher ist es sinnvoll ihm eine fortlaufende
Nummer zu geben:
Die mit auto_increment zuletzt erzeugte ID kann mit folgender Konstruktion schnell ermittelt werden: $neu_id = mysql_insert_id(); Ändern
Löschen
|