> Tech > Eviter d’utiliser datetime comme clé primaire

Eviter d’utiliser datetime comme clé primaire

Tech - Par Renaud ROSSET - Publié le 24 juin 2010
email

Q: Je travaille sur une base de données de gestion de paie et j'ai suggéré à  l'équipe de développement d'utiliser une colonne datetime comme clé primaire d'une table. Les membres de l'équipe me l'ont déconseillé, mais quand j'ai demandé une bonne raison, personne ne s'est mouillé. Pourquoi ne devrais-je pas

Eviter d’utiliser datetime comme clé primaire

utiliser une colonne datetime
comme clé primaire ?

R: J’approuve votre équipe de développement.
En général, il faut éviter
d’utiliser datetime comme clé primaire
pour plusieurs raisons.
Premièrement, datetime est un
type de donnée de 8 octets, et les clés
sont d’autant plus efficaces et rapides
qu’elles sont étroites. Si vous prévoyez une très grande table, il vaut mieux
adopter un type de donnée de type entier,
comme le int de 4 octets ou le
smallint de 2 octets.

Deuxièmement, et bien plus important,
datetime n’est précis qu’au
300e de seconde, ou 3,33 millisecondes
(ms). La table 1, que j’ai copiée
à  partir de SQL Server Books Online
BOL), montre comment SQL Server
arrondit les différentes valeurs datetime.
Par définition, les colonnes de clé
primaire doivent être uniques et vous
ne pouvez pas être certain d’avoir des
valeurs uniques dans une colonne datetime.
Vos règles de gestion édictent
peut-être qu’il est impossible d’entrer
des enregistrements multiples séparés
les uns des autres par 3,33 ms, mais je
pense qu’une telle supposition est
dangereuse. Les règles de gestion et
les suppositions techniques peuvent
toujours changer.

Téléchargez cette ressource

Guide de Sécurité IA et IoT

Guide de Sécurité IA et IoT

Compte tenu de l'ampleur des changements que l'IA est susceptible d'entraîner, les organisations doivent élaborer une stratégie pour se préparer à adopter et à sécuriser l'IA. Découvrez dans ce Livre blanc Kaspersky quatre stratégies efficaces pour sécuriser l'IA et l'IoT.

Tech - Par Renaud ROSSET - Publié le 24 juin 2010