Hur ange användargradering på bästa sätt i MySQL?

Webbutveckling

1 svar · 459 visningar · startad av bassebhu

Medlem sedan nov. 20016 480 inlägg
Trådstart#1

Hallå!

Hur bör jag på bästa sätt ange vilka rättigheter en användare har?

T.ex. ett fält i användartabellen med varchar (5) där det får plats ADMIN, USER, MOD etc. eller en tinyint (1) med bara siffervärden från 0-9?
Fördelar/nackdelar? Det med text måste ju kännas trevligt i koden, men siffrorna raskare att jämföra?
Det borde ju vara mariginell skillnad så jag är bara ute efter vad som anses bäst :)

Vad brukar ni kalla detta fält på engelska? grade, status, rank, type?

Tack!

Medlem sedan aug. 20039 340 inlägg
#2

Ska du bara ha ett begränsat antal typer av användare kan du köra en enum. Då lagras värdet som en tinyint, men man komemr åt det som om det vore ett sträng-värde. Vill du att man ska kunna lägga till användarklasser i efterhand bör du ha en tabell till som innehåller åtminstone fälten ID och klassnamn.

259 ms totalt · 4 externa anrop · v20260731065814-full.d34c6d5a
124 ms — deklarationer (db)
0 ms — hämta statistik (cache)
130 ms — hämta tråd, inlägg och bilagor (db)
125 ms — ändringar (db)