Module: ActiveRecord::ConnectionAdapters::DatabaseLimits

Included in:
AbstractAdapter
Defined in:
lib/active_record/connection_adapters/abstract/database_limits.rb

Instance Method Summary collapse

Instance Method Details

#allowed_index_name_lengthObject

Returns the maximum allowed length for an index name. This limit is enforced by Rails and is less than or equal to #index_name_length. The gap between #index_name_length is to allow internal Rails operations to use prefixes in temporary operations.



26
27
28
# File 'lib/active_record/connection_adapters/abstract/database_limits.rb', line 26

def allowed_index_name_length
  index_name_length
end

#column_name_lengthObject

Returns the maximum length of a column name.



12
13
14
# File 'lib/active_record/connection_adapters/abstract/database_limits.rb', line 12

def column_name_length
  64
end

#columns_per_multicolumn_indexObject

Returns the maximum number of columns in a multicolumn index.



46
47
48
# File 'lib/active_record/connection_adapters/abstract/database_limits.rb', line 46

def columns_per_multicolumn_index
  16
end

#columns_per_tableObject

Returns the maximum number of columns per table.



36
37
38
# File 'lib/active_record/connection_adapters/abstract/database_limits.rb', line 36

def columns_per_table
  1024
end

#in_clause_lengthObject

Returns the maximum number of elements in an IN (x,y,z) clause. nil means no limit.



52
53
54
# File 'lib/active_record/connection_adapters/abstract/database_limits.rb', line 52

def in_clause_length
  nil
end

#index_name_lengthObject

Returns the maximum length of an index name.



31
32
33
# File 'lib/active_record/connection_adapters/abstract/database_limits.rb', line 31

def index_name_length
  64
end

#indexes_per_tableObject

Returns the maximum number of indexes per table.



41
42
43
# File 'lib/active_record/connection_adapters/abstract/database_limits.rb', line 41

def indexes_per_table
  16
end

#joins_per_queryObject

Returns maximum number of joins in a single query.



62
63
64
# File 'lib/active_record/connection_adapters/abstract/database_limits.rb', line 62

def joins_per_query
  256
end

#sql_query_lengthObject

Returns the maximum length of an SQL query.



57
58
59
# File 'lib/active_record/connection_adapters/abstract/database_limits.rb', line 57

def sql_query_length
  1048575
end

#table_alias_lengthObject

Returns the maximum length of a table alias.



7
8
9
# File 'lib/active_record/connection_adapters/abstract/database_limits.rb', line 7

def table_alias_length
  255
end

#table_name_lengthObject

Returns the maximum length of a table name.



17
18
19
# File 'lib/active_record/connection_adapters/abstract/database_limits.rb', line 17

def table_name_length
  64
end