sql >> Databáze >  >> RDS >> Mysql

Nejlepší způsob, jak vyvíjet/spravovat/navrhovat opakující se úkoly/kalendář

Uložte vše do databáze.

Chcete mít tabulku "Task Template" a "Task" tabulku, kde je vztah jeden->mnoho.

Když uživatel uvede, že chce, aby se úkol znovu objevil, vytvořte záznam „Šablona úkolu“ a poté vytvořte tolik „Úkolů“, kolik uživatel uvedl (nedovolte uživateli vytvářet úkoly příliš daleko do budoucnosti). Každá úloha je propojena se šablonou úlohy pomocí cizího klíče. Myšlenka je taková, že SQL bude efektivnější při správě těchto záznamů, než se to všechno snažit dělat v kódu založeném na jedné šabloně. Budete tak mít více možností při třídění a filtrování dat. Psaní SQL dotazu je koneckonců jednodušší než psaní, testování a údržba PHP funkce, která manipuluje s daty.

Některé další tipy, které bych vám dal, jsou:

  • Snažte se získat mnoho informací ve svém záznamu „Šablona úkolu“. Zachovejte počet úkolů, které šablona pokrývá, datum konce posledního úkolu, čas, který uplynul mezi prvním a posledním úkolem, atd.. Tato „Metadata“ vám mohou pomoci ušetřit čas na dotazy, když hledáte řazení a filtrování. úkoly.
  • Umístěte index do pole Datum a FK, pomůže to také času dotazu.
  • Právě jsem v práci vytvořil dvě kalendářové aplikace, které šéfové velmi dobře přijali. Použil jsem plugin "FullCalendar" JQuery (http://arshaw.com/fullcalendar/). Ke zpracování většiny událostí jsem používal JQuery AJAX a měl zabudovanou podporu pro zobrazení Měsíc, Den a Týden.


  1. spouštění postgresql a pgadmin ve Windows bez instalace

  2. Vložit obrázek do pole obrázku serveru SQL Server 2005 pouze pomocí SQL

  3. Převod řetězce do formátu časového razítka MySQL v php

  4. Jak kaskádově přetrvávat pomocí JPA/EclipseLink