MySQL Kurzeinführung

Erstellt: 24.11.2005 | Aktualisiert: 21.09.2006

Ein kurzer Einblick in die Open Source Datenbank MySQL. Diese Snippet ist Bestandteil einer Vorlesung und wird in den nächsten Tagen noch überarbeitet werden.

Als Basiswissen empfiehlt es sich das Snippet Relationale Datenbanken zu lesen, um einige Grundlagen zu Datenbanken zu erhalten.

Was ist MySQL?

MySQL ist eine freiverfügbares SQL Datenbankverwaltungssystem (SQL für Structured Query Language), welches insbesondere bei der Webentwicklung in Kombination mit PHP verwendet wird.

Definition: MySQL – Wikipedia

Die SQL-Syntax kann sich je nach verwendeter Technologie leicht voneinander unterscheiden. In der Folge einige grundlegende und allgemeine Komponenten der SQL-Datenbanksprache.

SQL-Komponenten

SQL bietet Funktionen um mit relationalen Datenbanksystemen zu arbeiten. Die dazugehörigen Befehle sind in drei Befehlsgruppen bzw. Sprachen aufgeteilt. Diese Sprachen sind Bestandteil von SQL.

Data Definition Language (DDL)

Bei der DDL werden Befehle zur Verfügung gestellt mit denen man Datenbanken und deren Elemente (z.B. Tabellen) erstellen, ändern und löschen kann.

Tabelle anlegen

CREATE TABLE person
( id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(50) NOT NULL,
vorname VARCHAR(50)
)

Tabelle verändern

ALTER TABLE
person
ADD
email VARCHAR(100)

Tabelle löschen

DROP TABLE person

Data Manipulation Language (DML)

Bei der DML gibt es Befehle, um Daten in der Datenbank einzufügen, wiederzugewinnen, zu löschen und zu verändern. Die wichtigsten DML-Befehle sind INSERT, UPDATE, DELETE und SELECT.

Einfügen von Datensätzen mit INSERT

INSERT INTO person (name, vorname) VALUES ('Muster', 'Hans');

Verändern von Datensätzen mit UPDATE

UPDATE person SET name="Meier";

Löschen von Datensätzen mit DELETE

DELETE FROM person LIKE '%M';

Auswählen von Datensätzen mit SELECT

SELECT * FROM person;

Data Control Language (DCL)

Die DCL stellt Befehle zur Verfügung mit denen man Daten in Datenbanken schützen kann. Es handelt sich hier um Befehle wie GRANT, DENY oder REVOKE

MySQL Funktionen in PHP

Eine Liste aller Funktionen mit denen MySQL aus PHP heraus angesprochen werden kann, findet man im offiziellen PHP-Manual: MySQL-Funktionen

Der Zugriff auf eine MySQL-Datenbank ist relativ einfach. Grundsätzlich kommt man mit den folgenden fünf Funktionen aus:

  • mysql_connect verbindet mit dem Datenbankserver
  • mysql_select_db wählt die Datenbank aus
  • mysql_query führt eine SQL-Anweisung aus
  • mysql_num_rows ermittelt die Anzahl der Datensätze
  • mysql_fetch_array holt die Daten in ein Array

Verbindung aufbauen und Datenbank wählen

// MySQL-Server
$server = "localhost";

// MySQL-Nutzer
$user = "nutzer";

// MySQL-Kennwort
$pass = "obelix712"; 

// Verbindung aufbauen
$con = mysql_connect($server, $user, $pass);
if (!$con) {
   die('keine Verbindung: ' . mysql_error());
}
echo 'Verbindung erfolgreich';

// Datenbank wählen

// DB-NAMEN
$db = "test_db";

$db_selected = mysql_select_db($db, $con);
if (!$db_selected) {
   die ('Keine Datenbank: ' . mysql_error());
}

Datensätze lesen

// Ausführen einer SQL-Anfrage
$sql = "SELECT * FROM person";
$result = mysql_query($sql, $con);

// Ergebniss in XHTML ausgeben
if($result){
   while($row = mysql_fetch_array($result)){
     echo '

Name: '.$row[name].'

>;
     echo '

Vorname: '.$row[vorname].'

;
   }
} else {
   echo '

'.mysql_error($con).'

';
}

// Freigeben des Resultsets
mysql_free_result($result);

// Schliessen der Verbinung
mysql_close($con);

Datensätze schreiben

...

Datensätze löschen

...

Links zum Thema