Vediamo le cose da diverse prospettive e penso che i due campi siano identificati da:
Singolare ("utente")
La persona che crea una correlazione tra il nome della tabella e il fatto che rappresenti un contenitore, che può contenere più righe.
Quindi "contenitore utente" può contenere più righe.
Plurale ("utenti")
La persona che non fa la correlazione tra il nome della tabella e quel fatto rappresenta un contenitore. Ovviamente sanno che è un contenitore, ma non è presente nel nome.
ad esempio,
un "cartone per uova" può contenere più uova, ma questo è ovvio dato che il riferimento al contenitore è nel nome, fornendo potenziale per più uova. Tuttavia, con il nome della tabella singolare "utente", il riferimento al contenitore non è presente nel nome. ad es. "user_container" sarebbe probabilmente accettabile per le persone che preferiscono nomi plurali.
Penso che ciò sia dovuto anche al fatto che anni di plurale sono una pratica comune e nella maggior parte del materiale didattico online.
Detto questo, penso che tecnicamente parlando il singolare sia più preciso dato che stiamo nominando un singolo contenitore e che i contenitori possono contenere più (o singole) righe.
Sembra sbagliato alle persone in quanto collegano mentalmente il nome della tabella al contenuto (più righe richiedono un nome plurale) piuttosto che collegare mentalmente il contenitore nominato al contenuto (un contenitore consente più).
Come sempre, spesso non c'è un giusto e un sbagliato, ed è più su ciò che si adatta allo scenario, e soprattutto essere coerenti con qualsiasi cosa tu scelga.
Se stai facendo il progetto esclusivamente e non c'è alcun motivo reale per andare in entrambi i modi, fai quello che ritieni sia il migliore, o solo la preferenza. Applica lo stesso quando fai parte di una squadra di sviluppo e prendi una decisione unanime.