Programmieren mit php und mySQL (Einführung zu mySQL) - Guru 2.0
Programmieren mit php und mySQL (Einführung zu mySQL)

Programmieren mit php und mySQL (Einführung zu mySQL)

Der php-Teil ist abgeschlossen! Natürlich nur die Grundlagen, wir werden jetzt immer neue Dinge und Befehle dazu lernen. Heute werden wir uns mit Datenbanken und mySQL beschäftigen. Dies wird ein wenig theoretisch werden, aber ohne ein gutes Fundament, bricht das schönste Haus zusammen. Also legen wir los!

Datenbanken

Jeder hat schon von Ihnen gehört und auch die meisten schon damit gearbeitet, aber die Fachbegriffe sind oft noch schleierhaft. Daher wirst Du diese zuerst lernen müssen. Ich gehe auf viele Fachbegriffe nur im Überblick ein, wir wollen es ja nicht komplizierte machen als es ohnehin schon ist.

Datenbankmanagementsystem

Das Datenbankmanagementsystem (DBMS) ist eine Software am Server, welche das Datenbanksystem verwaltet. Es legt ein Datenbankmodell fest. Sie bestimmt maßgeblich die Funktionalität und Geschwindigkeit des ganzen Systems. Oft findest Du auch den Begiff “Datenbankserver” dafür.

Datenbank oder Database

Ist einfach eine (strukturierte) Ablage für Daten. Eine Datenbank (DB) hat immer ein “Thema”. Sie nimmt einen Datenbestannd zu einem Oberbegriff auf. Das können zum Beispiel die Buchhaltungsdaten oder die CD-Sammlung oder ein onLine-Shop oder auch die Daten Deines Blogs sein.

relationales Datenbankmodell

Dies ist eigentlich ein Gedankenmodell, mit dem beschrieben wird, wie die Daten organisiert werden. Es legt fest wie Tabellen, Felder und Schlüssel verwendet werden und auch wie diese organisiert werden.

Tabelle oder Table

Ist ein Teil einer Datenbank und stellt ein Kapitel des Themas dar. Hier werden die einzelnen Datensätze gespeichert, zum Beispiel die Adresse eines Kunden oder auch ein Kommentar zu einem Blogpost. Du kannst sie Dir wie eine Seite einer Tabellenkalkulation vorstellen. Die Zeilen sind dann die Datensätze. Die Spalten sind dann die Datenfelder.

Datenfeld oder Attribute

Ein Datenfeld ist der kleinste Teil einer Tabelle und nimmt genau einen Wert (wir sagen dazu auch Datum) auf. Es ist auch gleichzeitig die Spalte einer Tabelle. In einem Datenfeld speicherst Du zum Beispiel den Vornamen oder ein Geburtsdatum oder den Titel eines Blogposts. Datenfelder haben immer einen Datentyp, genauso wie Du es bei den Variablen in php kennengelernt hast. Die Datentypen sind nicht exakt gleich aber sehr ähnlich.

Primärschlüssel oder Primarykey

Dies ist eine Eigenschaft eines oder mehrerer Datenfelder. Der Primärschlüssel identifiziert einen Datensatz eindeutig. Das heißt, dass dieser Wert oder die Kombination der Werte nur ein einziges mal in der Tabelle vorkommt. Es ist zum Beispiel die Kundennummer in der Adressentabelle oder die ID-Nummer eines Blogposts.

Index oder Secondarykey

Der Index ist auch eine Eigenschaft von Datenfeldern. Er erlaubt den schnellen Zugriff auf Tabellenzeilen, denn die Tabelle wird nach dem Index sortiert und kann dadurch schnell durchsucht werden. Daher ist es logisch, dass auf dem Primarykey ein Index liegt. Aber auch alle anderen Spalten, welche häufig durchsucht werden, sollten mit einem Index versehen werden. Denn damit läuft die ganze Datenbankabfrage einfach schneller.

SQL

Dies ist die Abkürzung für “Structured Query Language”, also eine Abfragesprache mit Strukturen. Es ist wie php eine Art “Programmiersprache”. Man kann damit die Daten einer Datenbank abfragen und auch manipulieren (ändern, neuanlegen und löschen). Dies ist ein Teil, denn Du hier lernen wirst.

DDL

Die “Data Definition Language” ist dafür zuständig, dass Du Tabellen, Abfragen oder Indizes in einer Datenbank anlegen kannst. Mit SQL erhältst Du die Daten aus der Datenbank und mit der DDL kannst Du die Strukturen anlegen oder verändern. Mit der DDL werden wir uns hier nicht beschäftigen, denn wir werden ja phpMyAdmin [EN] nutzen. Falls Du es noch nicht installiert hast, wird es jetzt Zeit.

Unsere Projektdatenbank

Zuerst müssen wir mal eine neue Datenbank anlegen. Wir werden sehen was daraus wird, aber wir brauchen auf jeden Fall brauchen wir Personendaten und einen Loginbereich und, und, und. Lass Dich einfach überraschen.

Die Datenbank anlegen

Jetzt startest Du in Deinem Browser phpMyAdmin und legst eine neue Datenbank mit dem Namen phpKurs an. Achte darauf, dass die Kollationen alle wie im Bild dargestelt auf utf8_general_ci eingestellt sind.

Datenbank in phpMyAdmin anlegen

Datenbank in phpMyAdmin anlegen

Dann klickst Du auf Anlegen und phpMyAdmin zeigt Dir in der obersten Zeile den DDL-Code für die Anlage der Datenbank und rechts siehst Du in der Auswahlliste phpKurs (0), dies ist jetzt aktive Datenbank mit der Du arbeitest.

Die Personentabelle

Jetzt legen wir die Tabelle für die Personen an.

Tabelle mit phpMyAdmin anlegen

Tabelle mit phpMyAdmin anlegen

Du klickst dazu auf den Reiter Struktur und gibst dann als Name tblUser und als Feldanzahl 8 ein. Jetzt reicht die Bestätigung mit OK um auf das Definitionsformular weitergeleitet zu werden. Hier gibst Du die Felder wie im Screenshot gezeigt ein. Ich habe die Spalten Kollation und Attribute aus dem Bild entfernt, da Du sie auch ignorieren kannst.

Datenfelder in der Tabelle anlegen

Datenfelder in der Tabelle anlegen

In der Zukunft, wirst Du nur mehr so eine Liste erhalten um die Datenfelder anzulegen.

  • ID, int, auto_increment, PK
  • nickname, varchar 30, UI
  • passwort, varchar 30
  • vorname, varchar 50
  • nachname, varchar 50, IDX
  • email, varchar 100
  • logins, int
  • lastlogin, datetime

Damit kannst Du dann die Tabelle anlegen. Ich gebe in der Liste auch nur die befüllten Felder an, alle anderen kannst Du wie vordefiniert lassen. Wichtig ist die Groß-/Kleinschreibung. Denn in der Folge brauchen wir die Feldnamen und Tabellennamen in php und SQL und dort sind manche Dinge von der Schreibweise abhängig. Wenn Du das Formular ausgefüllt hast, klickst Du auf Speichern und schon ist Deine erste Tabelle angelegt.

Der 1. Datensatz

Jetzt legst Du deinen ersten Datensatz an. Dazu klickst Du auf das Register Einfügen und füllst das Formular wie im ScreenShot gezeigt aus. Sobald Du fertig bist klickst Du auf OK und der neue Datensatz wird in die Tabelle eingefügt.

Datensatz in Tabelle einfügen

Datensatz in Tabelle einfügen

Falls Du das Resulat sehen willst, klicke auf das Register Anzeigen, es ist jetzt nicht mehr grau. Hier kannst Du auch Datensätze löschen oder bearbeiten.

Falls Du jetzt ein wenig verwundert bist, dass wir das Passwort im Klartext speichern, ist es ganz normal. Normalerweise muss man Passwörter zumindest MD5-codiert speichern. Aber für unser Projekt, lassen wir diesen Sicherheitsaspekt ausser Acht.

Für heute haben wir genug gelernt. Bereite dich seelisch schon auf das nächste mal vor. Dann wird es anstregend, denn wir werden mit php eine Verbindung zur Datenbank aufbauen.

In eigener Sache

Ich hoffe, dass meine Erklärungen verständlich waren. Ich bin gespannt wie viele mitmachen und auf die Lösung kommen. Ich werde es aber nur erfahren, wenn Du einen Kommentar eingibst. Also schreib ruhig, dass Du die Übungen machst und auch wie es Dir dabei geht. Der Kurs kann für Dich ein riesiger Erfolg werden, wenn Du mir eine Rückmeldung gibst. Denn dann kann ich die weiteren Artikel Deinen Wünschen anpassen.

Information

Diese Artikelserie ist mit dem Tag phpMySQL@Kurs versehen. Damit kannst Du schnell alle Teile des Kurses finden: https://www.guru-20.info/tag/phpMySQL@Kurs

Startseite bzw. Inhaltsverzeichnis des Kurses

Es wurden 2 Kommentare zu diesem Beitrag geschrieben.

  • Oliver Klee

    Datenbanken ein sehr schönes Thema. Nur vermisse ich das Thema Normalisierung, also 1. Normalform 2. Normalform usw… Ich würd sagen bis zur 3. sollte man die machen, danach wirds kompliziert. Aber sowas in die Richtung ist sicher schon in der “Feder”.

    Hast du mal überlegt das Tutorial ein wenig “abzuspalten”, eigene Navigation etc.

    LG
    Oliver

    • Guru 2.0 Autor

      Ja! Ich auch! Aber ich wollte nicht zu sehr ins Detail gehen. Daher habe ich es mir für einen eigenen Artikel aufgespart 😉

Blogheim.at Logo
Diese Website verwendet Cookies - nähere Informationen dazu finden Sie in unserer „Datenschutzerklärung“. Klicken Sie auf „Ich stimme zu“, um Cookies zu akzeptieren und unsere Webseite zu besuchen, oder klicken Sie auf „Cookie-Einstellungen“, um Ihre Cookies selbst zu verwalten.