[RESOLU] Clé primaire et timestamp ?

ViPHP
xTG
ViPHP | 7331 Messages

10 nov. 2013, 18:01

Bonjour à toutes et à tous,

j'ai cet à priori depuis un moment, est-ce mal d'utiliser un timestamp comme clé primaire ?
(dans mon cas un entier + un timestamp comme clé)

J'ai l'impression qu'on m'avait inculqué que c'était mal d'utiliser une date comme index mais j'ai pas trouvé de référence à ce propos sur le net et ça me travaille. |*()

Eléphant du PHP | 77 Messages

10 nov. 2013, 22:00

La bonne pratique me dirait qu'on devrait toujours utiliser un entier avec incrémentation de 1 à chaque fois mais dans l'absolu dès l'instant où la clé que tu génères est unique et qu'elles ont une logique de suite alors pourquoi pas ?

Par contre, sur MySql ou Oracle, on peut générer un séquence automatique avec une date ?
Développeur PHP/Javascript/HTML

Mes sites perso :
construire une piscine => http://www.construire-sa-piscine.com
Le cadre végétal => http://www.cadre-vegetal.org

ViPHP
xTG
ViPHP | 7331 Messages

10 nov. 2013, 23:00

Cela ne sera pas une séquence automatique, j'ai une table contenant des logs.
Ma clé est donc : int;timestamp
Avec l'entier pointant sur un élément d'une autre table.
Donc aucun champs configuré pour une séquence automatique.
Mais sachant qu'il ne pourra y avoir plusieurs logs sur la même seconde ce n'est pas un souci.

Eléphant du PHP | 77 Messages

10 nov. 2013, 23:35

Je pense (mais à confirmer) qu'une clé primaire doit avoir comme contrainte seule son unicité lui permettant de pouvoir distinguer à coup sûr une ligne d'une autre.

Qu'elle ne soit pas séquentielle ne me semble pas gênant et les définitions ne semblent pas l'intégrer comme contrainte obligatoire.
Développeur PHP/Javascript/HTML

Mes sites perso :
construire une piscine => http://www.construire-sa-piscine.com
Le cadre végétal => http://www.cadre-vegetal.org