Mazání člena: Porovnání verzí

Z Freenetis Wiki
Přejít na: navigace, hledání
m (Quimi přesunul stránku Mazání člena na Mazání člena bez založení přesměrování)
 
(Není zobrazeno 9 mezilehlých verzí od 3 dalších uživatelů.)
Řádek 2: Řádek 2:
  
 
Jednou za čas je potřeba smazat některého člena, který buď nebyl vůbec nikdy připojený nebo nikdy sdružení nic nezaplatil, takže není potřeba jej mít v evidenci jako člena.
 
Jednou za čas je potřeba smazat některého člena, který buď nebyl vůbec nikdy připojený nebo nikdy sdružení nic nezaplatil, takže není potřeba jej mít v evidenci jako člena.
 +
 +
== Varování ==
 +
 +
Důrazně upozorňujeme, že pokud nevíte, co přesně děláte, můžete si svou neopatrností či chybou nevratně smazat data z databáze! Takže jakékoli mazání přímo na databázi mimo rozhraní FreenetISu je plně ve vaší zodpovědnosti.
  
 
== Postup ==
 
== Postup ==
  
Freenetis sám o sobě takové smazání jedním kliknutím (zatím) neumožňuje. Jediným řešením je pak odstranění odpovídajících záznamů přímo v databázi, ideálně skrz '''phpMyAdmin'''.
+
FreenetIS sám o sobě takové smazání jedním kliknutím (zatím) neumožňuje. Jediným řešením je pak odstranění odpovídajících záznamů přímo v databázi, ideálně skrz '''phpMyAdmin'''.
 +
 
 +
Některé záznamy (například zařízení toho člena, jeho neschválené práce, atd.) lze smazat přímo ve FreenetISu.
  
Některé záznamy (například zařízení toho člena, jeho neschválené práce, atd.) lze smazat přímo ve freenetisu.
 
  
 
Smazat '''ručně''' bude třeba:
 
Smazat '''ručně''' bude třeba:
  
- '''člena''' - záznam z tabulky '''members''' s odpovídajícím ID
+
* '''člena''' - záznam z tabulky '''members''' s odpovídajícím ID (zapamatujeme si hodnotu address_point_id = hodnotu ID jeho adresného bodu)
 +
 
 +
* '''hlavního uživatele''' - záznam z tabulky '''users''' s hodnotou sloupce member_id rovnajícího se odpovídajícímu ID člena, a také je třeba smazat další případné uživatele mazaného člena
 +
 
 +
* '''práva''' - záznamy z tabulky '''groups_aro_map''' s hodnotou sloupce aro_id rovnající se ID mazaných uživatelů
 +
 
 +
* '''kreditní účet''' - záznam z tabulky '''accounts''' s hodnotou sloupce member_id rovnajícího se odpovídajícímu ID člena (zapamatuje si ID tohoto účtu, viz následující)
  
- '''hlavního uživatele''' - záznam z tabulky '''users''' s hodnotou sloupce member_id rovnajícího se odpovídajícímu ID člena
+
* '''převody''' - záznam z tabulky '''transfers''' s hodnotou sloupce origin_id nebo destination_id rovnajícího se odpovídajícímu ID účtu člena (viz předchozí)
  
- '''kreditní účet''' - záznam z tabulky '''accounts''' s hodnotou sloupce member_id rovnajícího se odpovídajícímu ID člena
+
* '''adresní bod člena''' (pokud byl jediný komu patřil) - záznam z tabulky '''address_points''' s hodnotou ID rovnající se address_point_id z tabulky members
  
- '''převody''' - záznam z tabulky '''transfers''' hodnotou sloupce account_id rovnajícího se odpovídajícímu ID účtu člena (viz předchozí)
+
== SQL dotaz ==
  
Poté bude třeba smazat i adresní bod člena (pokud byl jediný komu patřil).
+
TODO: Dopsat jediný SQL dotaz, který toto všechno udělá za vás...

Aktuální verze z 31. 1. 2018, 14:13

Motivace

Jednou za čas je potřeba smazat některého člena, který buď nebyl vůbec nikdy připojený nebo nikdy sdružení nic nezaplatil, takže není potřeba jej mít v evidenci jako člena.

Varování

Důrazně upozorňujeme, že pokud nevíte, co přesně děláte, můžete si svou neopatrností či chybou nevratně smazat data z databáze! Takže jakékoli mazání přímo na databázi mimo rozhraní FreenetISu je plně ve vaší zodpovědnosti.

Postup

FreenetIS sám o sobě takové smazání jedním kliknutím (zatím) neumožňuje. Jediným řešením je pak odstranění odpovídajících záznamů přímo v databázi, ideálně skrz phpMyAdmin.

Některé záznamy (například zařízení toho člena, jeho neschválené práce, atd.) lze smazat přímo ve FreenetISu.


Smazat ručně bude třeba:

  • člena - záznam z tabulky members s odpovídajícím ID (zapamatujeme si hodnotu address_point_id = hodnotu ID jeho adresného bodu)
  • hlavního uživatele - záznam z tabulky users s hodnotou sloupce member_id rovnajícího se odpovídajícímu ID člena, a také je třeba smazat další případné uživatele mazaného člena
  • práva - záznamy z tabulky groups_aro_map s hodnotou sloupce aro_id rovnající se ID mazaných uživatelů
  • kreditní účet - záznam z tabulky accounts s hodnotou sloupce member_id rovnajícího se odpovídajícímu ID člena (zapamatuje si ID tohoto účtu, viz následující)
  • převody - záznam z tabulky transfers s hodnotou sloupce origin_id nebo destination_id rovnajícího se odpovídajícímu ID účtu člena (viz předchozí)
  • adresní bod člena (pokud byl jediný komu patřil) - záznam z tabulky address_points s hodnotou ID rovnající se address_point_id z tabulky members

SQL dotaz

TODO: Dopsat jediný SQL dotaz, který toto všechno udělá za vás...