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

Une table de base de données peut-elle être sans clé primaire ?

Techniquement, vous pouvez déclarer une telle table.

Mais dans votre cas, le time doit devenir la PRIMARY KEY , puisqu'il est probablement faux d'avoir des températures différentes pour le même moment et probablement inutile d'avoir la même plus d'une fois.

Logiquement, chaque table devrait avoir une PRIMARY KEY afin que vous puissiez distinguer deux enregistrements.

Si vous n'avez pas de clé candidate dans vos données, créez-en une de substitution (AUTO_INCREMENT , SERIAL ou tout ce que propose votre base de données).

La seule excuse pour ne pas avoir de PRIMARY KEY est un journal ou une table similaire qui fait l'objet d'un DML important et avoir un index dessus aura un impact sur les performances au-delà du niveau de tolérance.