2
我使用MySQL(沒有人是完美的),4.1版,我用來定義這樣的一些時間戳列:定義在MySQL中默認的日期值,類似於時間戳
ALTER TABLE foo ADD creation TIMESTAMP DEFAULT NOW() ;
我想做完全相同的事情,但對於DATE字段。原因是我不需要TIMESTAMP精度,並且由於MySQL中沒有函數索引,因此無法快速訪問給定日期的行(不管一天中的時間)。所以我嘗試以下,但它只是不工作:
ALTER TABLE foo ADD creation_date DATE DEFAULT CURDATE() ;
ERROR 1067 (42000): Invalid default value for 'creation_date'
甚至
ALTER TABLE foo ADD creation_date DATE DEFAULT DATE(NOW()) ;
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '(now())' at line 1
這也不起作用。
任何想法?
哼哼,所以有4.1沒有純粹的MySQL解決方案? – jeje 2009-07-29 09:45:57