# help:How to set default value for a column use of migration?

**URL:** <https://www.ruby-forum.com/t/help-how-to-set-default-value-for-a-column-use-of-migration/92046>\
**Category:** Rails\
**Created:** [April 15, 2007, 8:09am UTC](https://www.ruby-forum.com/t/help-how-to-set-default-value-for-a-column-use-of-migration/92046 "2007-04-15T08:09:35Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![jay](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/j/ed8c4c/32.png) [@jay](https://www.ruby-forum.com/u/jay)\
**Post date:** [April 15, 2007, 8:09am UTC](https://www.ruby-forum.com/t/help-how-to-set-default-value-for-a-column-use-of-migration/92046/1 "2007-04-15T08:09:35Z")

</div>

hi,all…  
Here i want to use of migration to create a table and set a defult  
value for a column…but i cant’t finished…

mycode:  
class CreateMessages \< ActiveRecord::Migration  
def self.up  
create\_table :messages do |t|  
t.column :name, :string  
t.column :content, :text  
t.column :posttime, :datetime, :default =\> “now()”  
end  
end

def self.down  
drop\_table :messages  
end  
end

# it can’t work sucessfully.And the error like this: (in G:/Jc\_RubyonRails/InstantRails/rails\_apps/guestbook) == CreateMessages: migrating

– create\_table(:messages)  
rake aborted!  
Mysql::Error: Invalid default value for ‘posttime’: CREATE TABLE  
messages (`id` int(11) DEFAULT NULL auto\_increment PRIMARY KEY, `name`  
varchar(255) DEFAULT NULL, `content` text DEFAULT NULL, `posttime`  
datetime DEFAULT ‘now()’) ENGINE=InnoDB

(See full trace by running task with --trace)

someone could help me.thanks.

---

<div class="post-metadata">

**Author:** ![jay](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/j/ed8c4c/32.png) [@jay](https://www.ruby-forum.com/u/jay)\
**Post date:** [April 16, 2007, 2:54am UTC](https://www.ruby-forum.com/t/help-how-to-set-default-value-for-a-column-use-of-migration/92046/2 "2007-04-16T02:54:28Z")

</div>

Hi, you can do one of the following:

t.column :posttime, :datetime, :default =\> Time.now

or

t.column :created\_at, :datetime

Good luck,

-Conrad
