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

Návrh databáze:3 typy uživatelů, samostatná nebo jedna tabulka?

To, co musíte vzít v úvahu při navrhování tabulek, není nutně to, k čemu budou mít přístup a jak je to podobné/odlišné, ale spíše to, jak jsou podobné/odlišné samotné uživatelské úrovně.

Pokud například typy uživatelů budou mít stejné atributy (jméno, e-mail, datum narození atd.), patří do jedné tabulky spolu se sloupcem udávajícím úroveň jejich oprávnění.

To také usnadňuje změnu úrovně oprávnění pro uživatele, přičemž z obyčejného zaměstnance můžete udělat administrátora, například pouze aktualizací záznamu v tabulce uživatelů.

Pokud jsou Dodavatelé jiného typu objektu s jinými atributy než ostatní dva, mohou Dodavatelé patřit do své vlastní tabulky.

Nebo ještě jedna věc ke zvážení:Můžete použít users tabulka, která obsahuje jen velmi omezené informace o uživatelích všech tří typů, a pokud mají typy rozšířené atributy, které spolu navzájem nesouvisí, můžete je uložit do jiných tabulek pomocí cizího klíče zpět k hlavním users tabulka.



  1. Jak omezit NULL jako parametr na uloženou proceduru SQL Server?

  2. Kdy se výkon Distinct a Group By liší?

  3. MYSQL count of count?

  4. hostitel 'localhost' se nemůže připojit k tomuto serveru MySQL (#1130)