Class: ActiveRecord::ConnectionAdapters::MySQL::Column

Inherits:
Column
  • Object
show all
Defined in:
lib/active_record/connection_adapters/mysql/column.rb

Overview

:nodoc:

Instance Attribute Summary

Attributes inherited from Column

#collation, #comment, #default, #default_function, #name, #null, #sql_type_metadata

Instance Method Summary collapse

Methods inherited from Column

#==, #bigint?, #encode_with, #has_default?, #hash, #human_name, #init_with, #initialize

Methods included from Deduplicable

#deduplicate

Constructor Details

This class inherits a constructor from ActiveRecord::ConnectionAdapters::Column

Instance Method Details

#auto_increment?Boolean

Returns:

  • (Boolean)


17
18
19
# File 'lib/active_record/connection_adapters/mysql/column.rb', line 17

def auto_increment?
  extra == "auto_increment"
end

#case_sensitive?Boolean

Returns:

  • (Boolean)


13
14
15
# File 'lib/active_record/connection_adapters/mysql/column.rb', line 13

def case_sensitive?
  collation && !collation.end_with?("_ci")
end

#unsigned?Boolean

Returns:

  • (Boolean)


9
10
11
# File 'lib/active_record/connection_adapters/mysql/column.rb', line 9

def unsigned?
  /\bunsigned(?: zerofill)?\z/.match?(sql_type)
end

#virtual?Boolean

Returns:

  • (Boolean)


21
22
23
# File 'lib/active_record/connection_adapters/mysql/column.rb', line 21

def virtual?
  /\b(?:VIRTUAL|STORED|PERSISTENT)\b/.match?(extra)
end