Archiv

Artikel Tagged ‘mysql’

MySQL: Datum vergleichen (Differenz)

17. Dezember 2012 Keine Kommentare

Sehr häufig, ich behaupte teilweise fast immer, ist es notwendig ein Datum oder sogar mehrere verschiedene Daten (Plural von Datum) in einem Datensatz in der Datenbank zu speichern – entweder als ein bestimmtes Datum, zum Beispiel als eine Art von Frist oder einfach ein banales Datum wie den Zeitstempel (engl. timestamp), der festhält, zu welchem Zeitpunkt der Datensatz eigentlich angelegt wurde.

MySQL: Aus 2 Tabellen per JOIN löschen (DELETE)

8. November 2012 Keine Kommentare

In relationalen Datenbanken wird man in einigen Fällen n:m-Beziehungen haben. Diese Beziehungen setzt man in der Regel so um, dass man eine extra Tabelle erstellt, in der die Primärschlüssel der beiden Tabellen, zwischen denen die n:m-Beziehung besteht, als Fremdschlüssel hinterlegt sind. In bestimmten Fällen müssen Datensätze in dieser Tabelle gelöscht werden. Der Wert bzw. das Auswahlkriterium zum Löschen steht jedoch in einer der beiden Haupttabellen. Um die Abfrage in möglichst einem Query zu lösen, muss die Beziehungstabelle also mit einer der Tabellen über einen JOIN verbunden werden.

MySQL: Vom aktuellen Datum ausgehend bestimmtes Intervall berechnen

6. November 2012 Keine Kommentare

In vielen Fällen wird man eine Tabelle in der Datenbank haben, in der ein Datum als Typ DATE gespeichert ist. Von einem bestimmten Datum ausgehend, zum Beispiel vom aktuellen, will man nun alle Einträge anzeigen lassen, die 14 Tage, 1 Monat, 1 Jahr usw. zurückliegen. Man kann dies natürlich wie so oft auf verschiedene Weisen lösen, unter anderem mit Hilfe vom Timestamp (Zeitstempel). In diesem Post möchte ich aufzeigen, wie man eine solche MySQL Abfrage mit der Funktion CURRENT_DATE und INTERVAL realisieren kann.

MySQL: Fremdschlüssel in HeidiSQL per Klick anlegen

2. November 2012 Keine Kommentare

Es gibt viele kostenlose und gute MySQL Administrationstools. Eins davon ist unter anderem phpMyAdmin, der MySQL Query Browser oder HeidiSQL. Das letzte Tool HeidiSQL war ursprünglich für den Einsatz unter Windows konzipiert. Unter Linux kann man HeidiSQL  ebenso ausführen wie unter Windows, nämlich mit Wine. In diesem Tutorial möchte ich erläuern wie man schnell per Klick eine Fremdschlüsselbeziehungen in einer MySQL Datenbank mit InnoDB Engine anlegen kann.

Aufklappbares dynamisches Menü erstellen

7. März 2012 1 Kommentar

Eine Webseite besteht in der Regel aus mehreren HTML Seiten. Als Webmaster hat man die Aufgabe dem Nutzer eine einfache Navigation durch das Menü zu ermöglichen. Ein zu großes Menü mit allen Unterseiten kann den User schnell verwirren. Deswegen eignet sich insgesondere bei vielen Unterseiten mit einer hierarchischen Struktur ein dynamisches Menü, welches auch aufklappbar sein sollte.

MySQL: Per Zufall Daten aus Tabelle anzeigen

3. März 2012 Keine Kommentare

In der Regel werden Daten aus einer MySQL Datenbank gezielt abgefragt und anschließend angezeigt. Bestimmte Kategorien oder Beiträge (Posts) werden mit Hilfe der WHERE Klausel gesucht, mit den jeweiligen Vergleichsoperatoren ausgewählt und als Result ausgegeben. Um Daten aus einer Datenbank Tabelle zufällig anzeigen zu lassen, kann die MySQL Funktion RAND() genutzt werden. Die Einträge werden per Zufall Datensätze geladen.

Kategorien oder Menü hierarchisch anordnen

22. Februar 2012 3 Kommentare

Wenn Web Seiten oder Kategorien in der Datenbank hinterlegt werden, dann ist eine saubere Struktur – am besten eine Hierarchie notwendig, um die Seiten in die richtige Reihenfolge zu bringen und somit dem Nutzer auf der Internetseite ein Menü oder eine Art Navigation zu bieten. In einer zum Beispiel hierarchisch aufgebauten Übersicht, in der Regel auch als Sitemap bekannt, findet sich der Nutzer besser zurecht und gelangt schneller zur richtigen Unterseite.

Ursache warum mysql_insert_id() nicht funktioniert

26. Januar 2012 Keine Kommentare

Nach dem Speichern eines Datensatzes in die MySQL Datenbank kann es passieren, dass man für weitere Einträge in andere Tabellen die eindeutige ID des vorher gemachten Datensatzes braucht, zum Beispiel um diese als Fremdschlüssel in Relationstabellen zu nutzen. Die PHP Funktion mysql_insert_id() liefert die eindeutige ID des Eintrages / Datenbankeintrags, die für eine Spalte mit einem AUTO_INCREMENT erzeugt wurde.