SQL-Tutorium http://sql.idv.edu Ernst Rodlmayr SQL (Structured Query Language) = strukturierte Abfragesprache für DB • Abfragen (SELECT) = Auswertungen • Viele andere Möglichkeiten z.B. Insert Into, Create Table, Update, Delete • IVI nur Abfragen • bei einer Vielzahl von Datenbanken einsetzbar (Oracle, SQL, mySQL, …) SQL Grundlagen (2) • Braucht man das überhaupt in der Praxis? • Unternehmen sammeln sehr viele Daten (z.B. eybl) • Informationen aus Daten gewinnen => SQL • unternehmerische Entscheidungen • PRAXIS-Einsatzgebiete a) SQL-Statements über Befehlseditor b) WEB: • • eCommerce DB-Anbindung ans Internet (CMS) (SQL & php, SQL & asp.net) SQL mit PHP <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="de-at" lang="de-at"> <head> <title>Ausgabe</title> </head> <body> <h1>Ausgabe von Vorname, Nachname und Plz</h1> <table> <tr> <th>Vorname</th> <th>Nachname</th> <th>Plz</th> </tr> <?php /* Datenbankverbindung wird hergestellt und Datenbank wird ausgewählt */ $conn = mysql_connect($servername,$benutzername,$password) or die ("Keine DB Verbindung hergestellt"); mysql_select_db($datenbankname, $conn); $sql = "SELECT Vorname, Nachname, Plz FROM Kunde ORDER BY Plz"; /* Variable wird mit einem SQL Ergebnis gefüllt */ $rs_liste = mysql_query($sql, $conn); $pointer = 0; // Hilfsvariable wird initialisiert /* Ergebnisausgabe nur falls die Anzahl der Datensätze > 0 ist */ if (mysql_num_rows($rs_liste) > 0) { /* In einer Schleife werden die Datensätze Reihe für Reihe ausgegeben */ while (mysql_fetch_row($rs_liste)) { $vorname = mysql_result($rs_liste, $pointer, "Kunde.Vorname"); $nachname = mysql_result($rs_liste, $pointer, "Kunde.Nachname"); SQL Grundlagen (3) ad Befehlseditor) • Ablauf einer Abfrage mit SQL • Statement vom Client • Verarbeitung vom Server • Ergebnistabelle am Client • http://sql.idv.edu