sql >> Base de Datos >  >> RDS >> Mysql

Diseño de base de datos:¿1 tabla o 2?

La diferencia entre los dos diseños es principalmente de flexibilidad. Si la cuenta y los datos del usuario comparten una sola tabla, entonces cada usuario debe tener una cuenta, y cada cuenta puede tener solo un usuario (a menos que agregue otra tabla para permitir que se agreguen usuarios secundarios además del usuario que vive con la cuenta datos, o a menos que agregue nuevos registros con detalles de cuenta duplicados en cada uno, lo cual es muy malo y antitético a lo que se supone que deben hacer las bases de datos).

Con dos tablas, puede tener fácilmente varios usuarios en cada cuenta y también puede optar por permitir circunstancias en las que una cuenta no tiene usuarios, o en las que un usuario no tiene una cuenta, si hacerlo beneficiaría su caso de uso.

La compensación es que si desea hacer algo como determinar la cuenta de un usuario (o los usuarios en una cuenta), debe realizar una combinación si está utilizando dos tablas. Si tiene una tabla, todo lo que tiene que hacer es buscar la fila para obtener esta información.