Method: Myq::Core#generate_alter

Defined in:
lib/myq/core.rb

#generate_alter(k, v) ⇒ Object



142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
# File 'lib/myq/core.rb', line 142

def generate_alter(k, v)
  if v.nil?
    "\`#{k}\` varchar(255)"
  elsif k =~ /^id$/i
    "\`id\` integer NOT NULL auto_increment PRIMARY KEY"
  elsif v.class == String
    to_time_or_nil(v).nil? ? "\`#{k}\` varchar(255)" : "\`#{k}\` datetime"
  elsif v.class == Fixnum
    "\`#{k}\` integer"
  elsif v.class == Array
    "\`#{k}\` text"
  elsif v.class == Hash
    "\`#{k}\` text"
  elsif v.respond_to?(:strftime)
    "\`#{k}\` datetime"
  end
end