Mysql
 sql >> Base de données >  >> RDS >> Mysql

Conception de la base de données :3 types d'utilisateurs, séparés ou une table ?

Ce que vous devez prendre en compte lors de la conception des tableaux n'est pas nécessairement ce à quoi ils auront accès et en quoi cela est similaire/différent, mais plutôt en quoi les niveaux d'utilisateur eux-mêmes sont similaires/différents.

Par exemple, si les types d'utilisateurs auront les mêmes attributs (nom, e-mail, date de naissance, etc.), ils appartiennent à une table avec une colonne indiquant leur niveau de privilège.

Cela facilite également la modification des niveaux de privilèges pour un utilisateur, grâce auquel vous pouvez transformer un employé ordinaire en administrateur, par exemple, en mettant simplement à jour l'enregistrement dans la table des utilisateurs.

Si les fournisseurs sont un type d'objet différent avec des attributs différents des deux autres, les fournisseurs peuvent appartenir à leur propre table.

Ou, encore une chose à considérer :vous pouvez utiliser un users table qui ne contient que des informations très limitées sur les utilisateurs des trois types, et si les types ont des attributs étendus qui ne sont pas bien liés les uns aux autres, vous pouvez les stocker dans d'autres tables avec une clé étrangère vers les principaux utilisateurs users tableau.