Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
Bonjour,
je cherche des ressources pour améliorer la façon dont mes Bases de Données sont construites, en quelque sorte une sorte de 'Best practice'.
Les questions que je me pose souvent :
- comment nommer correctement mes tables,
- comment nommer les champs pour les liaisons dans les DB : exemple de liaison entre deux tables (voitures, motorisations) est-ce que vous feriez comme ça :
table (voitures) voiture_id | voiture_motorisation_id | .... table (motorisations) motorisation_id | motorisation_nom
- quoi choisir entre timestamp et datetime ?,...
merci
Hors ligne
Dans ma boite, mon chef a tendance à mettre les noms de clés en majuscules, mais d'habitude je fait plutot comme vous, à la différence que j'appelle la clé secondaire de la meme maniere que la primaire..
(en gros motorisation_id à la place de voiture_motorisation_id)
Au niveau des dates je voterais plutot pour du timestamp(j'ai horreur de la gestion des dates de mySQL )
Je trouve débile par exemple que pour le champ timestamp, pour insérer tu peut rentrer un time(), mais en sortie tu as un 2008-06-27 15:40:04 (ca ressemble à ca jcrois)(Merci au ZF pour simplifier ca), en PHP avant c'était un vrai bordel pour convertir à chaque fois entre les différents formats. Il m'est meme arrivé de stocker mes timestamps dans des INT(11) (c'est d'ailleurs ce que je fait actuellement(à cause des différences de format de timestamp entre bdds ) )
Hors ligne
Pourtant, avec une bonne classe, il est facile de jongler avec du datetime. De plus, en regardant ta base, tu comprends bcp plus facilement du datetime que tu timestamp.
Je bossais au début en timestamp, maintenant, j'hurle quand je récupère un vieux projet tout "timestampé"
Hors ligne
Oui maintenant c'est sur que c'est beaucoup plus simple, notemment avec le Zend_Date, ca doit etre des restes de PHP4 qui me restent ^^
Hors ligne