2010-05-31 6 views
0

Ce fait suite à cette question: Unique responses rails gemrails: type de date et GetDate

Je vais créer un indice basé sur l'ID utilisateur, URL et un type de date.

Je souhaite un type de date (pas de type datetime) car je souhaite que le jour, le jour de 24 heures fasse partie de l'index pour éviter la duplication des comptages de pages vues le même jour. En d'autres termes: Une vue ne compte qu'une fois par jour par un visiteur.

Je veux également que la valeur par défaut de cette colonne (viewdate) soit la fonction GETDATE().

C'est ce que j'ai dans ma migration.?

execute "ALTER TABLE PAGE_VIEWS ADD COLUMN viewdate datetime DEFAULT GETDATE() ` »

Mais la valeur viewdate est toujours vide Qu'est-ce que je manque

(en aparté , d'autres suggestions pour accomplir cet objectif?)

Répondre

0

Vous déclarez la colonne en tant que type datetime, pas en tant que date.En outre, je ne suis pas sûr que MySQL prend en charge l'ensemencement de valeur par défaut lors de la modification de l'onglet le.

Essayez ceci:

execute "ALTER TABLE page_views ADD COLUMN viewdate DATE" 
PageView.update_all('viewdate=CURDATE()')