class ActiveRecord::ConnectionAdapters::AbstractMysqlAdapter::SchemaCreation
Public Instance Methods
add_column_position!(sql, options)
click to toggle source
# File lib/activerecord-mysql-unsigned/active_record/v4/connection_adapters/abstract_mysql_adapter.rb, line 46 def add_column_position!(sql, options) if options[:first] sql << " FIRST" elsif options[:after] sql << " AFTER #{quote_column_name(options[:after])}" end end
column_options(o)
click to toggle source
Calls superclass method
# File lib/activerecord-mysql-unsigned/active_record/v4/connection_adapters/abstract_mysql_adapter.rb, line 39 def column_options(o) column_options = super column_options[:first] = o.first column_options[:after] = o.after column_options end
type_to_sql(type, limit, precision, scale, unsigned = false)
click to toggle source
# File lib/activerecord-mysql-unsigned/active_record/v4/connection_adapters/abstract_mysql_adapter.rb, line 54 def type_to_sql(type, limit, precision, scale, unsigned = false) @conn.type_to_sql type.to_sym, limit, precision, scale, unsigned end
visit_AddColumn(o)
click to toggle source
# File lib/activerecord-mysql-unsigned/active_record/v4/connection_adapters/abstract_mysql_adapter.rb, line 11 def visit_AddColumn(o) sql_type = type_to_sql(o.type.to_sym, o.limit, o.precision, o.scale, o.unsigned) add_column_sql = "ADD #{quote_column_name(o.name)} #{sql_type}" add_column_options!(add_column_sql, column_options(o)) unless o.type.to_sym == :primary_key add_column_position!(add_column_sql, column_options(o)) add_column_sql end
visit_ChangeColumnDefinition(o)
click to toggle source
# File lib/activerecord-mysql-unsigned/active_record/v4/connection_adapters/abstract_mysql_adapter.rb, line 20 def visit_ChangeColumnDefinition(o) column = o.column options = o.options sql_type = type_to_sql(o.type, options[:limit], options[:precision], options[:scale], options[:unsigned]) change_column_sql = "CHANGE #{quote_column_name(column.name)} #{quote_column_name(options[:name])} #{sql_type}" add_column_options!(change_column_sql, options.merge(column: column)) unless o.type.to_sym == :primary_key add_column_position!(change_column_sql, options) change_column_sql end
visit_ColumnDefinition(o)
click to toggle source
# File lib/activerecord-mysql-unsigned/active_record/v4/connection_adapters/abstract_mysql_adapter.rb, line 31 def visit_ColumnDefinition(o) sql_type = type_to_sql(o.type.to_sym, o.limit, o.precision, o.scale, o.unsigned) column_sql = "#{quote_column_name(o.name)} #{sql_type}" add_column_options!(column_sql, column_options(o)) unless o.type.to_sym == :primary_key column_sql end