Kuno: Termine (Strategiefrage)

Ich möchte mir einen Terminkalender basteln, der mir zeigt, welche Termine ich  in den nächsten 4 Monaten habe.

Dazu lege ich einen mySQL Datensatz an, mit folgenden Spalten:

id MEDIUMINT AUTO_INCREMENT NOT NULL PRIMARY KEY
terminbeschreibung TEXT NULL
ort VARCHAR(100)
wann DATETIME NOT NULL
wie_oft INT(3) /* Bsp: 3*/
rythmus INT(3) /* Bsp: 1=täglich, 2=wöchentlich, 3:zweiwöchtig usw */

Jetzt folgende Frage:
Ich will einen Datensatz immer nur einmal anlegen müssen, weil ich kein Bock habe, jedesmal etwas zu dem Termin zu schreiben. Deshalb möchte ich angeben können, wie oft der Termin wiederholt wird.
Das ist auch kein Problem.

Aber wie gebe ich das hinterher aus? Es reicht ja nicht, einfach "SELECT * FROM termine" zu machen.
Dann wäre ja höchstens 1 Termin drin.
Wie geht man bei solchen Sachen am besten vor?

  1. yo,

    Wie geht man bei solchen Sachen am besten vor?

    das ist programm-logik, dem ist mit reinem sql nur schwer/umständlich bei zu kommen.

    Ilja

    1. Wie sähe diese Logik aus?

      1. Morgen,

        Wie sähe diese Logik aus?

        Na so, wie sie dein Vorhaben entsprechend wunschgemäss umsetzt. Das hängt von den Technologien ab - du hast PHP aussenrum im Einsatz? Dann programmierst du dir eine Funktion, welcher du die Eingabeparameter gibst und sie dir das nächste Termindatum zurückgibt. Am einfachsten (nicht am besten) dürftest du es erreichen, wenn du jeweils einen Tag mit den Datums/Zeitfunktionen von PHP zum Eingabedatum hinzuzählst und dann überprüfst ob deine Bedingungen (gleicher Wochentag usw) noch auf das neue Datum zutreffen.

        Von MS gibt es eine mehr oder minder bekannte Spezifikation des Outlook Terminformats; das setzt sich aus ungefähr 7 oder 8 Werten zusammen. Ich habe dafür bzw. darauf basierend eine .Net Komponente entwickelt ...

        Und übrigens: Select * ... sowas tut man nicht. Benenne die auszugebenden Spalten explizit und in der gewünschten Reihenfolge.

        Ciao, Frank