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.



24
25
26
# File 'lib/active_record/connection_adapters/abstract/database_limits.rb', line 24

def allowed_index_name_length
  index_name_length
end

#column_name_lengthObject

Returns the maximum length of a column name.



10
11
12
# File 'lib/active_record/connection_adapters/abstract/database_limits.rb', line 10

def column_name_length
  64
end

#columns_per_multicolumn_indexObject

Returns the maximum number of columns in a multicolumn index.



44
45
46
# File 'lib/active_record/connection_adapters/abstract/database_limits.rb', line 44

def columns_per_multicolumn_index
  16
end

#columns_per_tableObject

Returns the maximum number of columns per table.



34
35
36
# File 'lib/active_record/connection_adapters/abstract/database_limits.rb', line 34

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.



50
51
52
# File 'lib/active_record/connection_adapters/abstract/database_limits.rb', line 50

def in_clause_length
  nil
end

#index_name_lengthObject

Returns the maximum length of an index name.



29
30
31
# File 'lib/active_record/connection_adapters/abstract/database_limits.rb', line 29

def index_name_length
  64
end

#indexes_per_tableObject

Returns the maximum number of indexes per table.



39
40
41
# File 'lib/active_record/connection_adapters/abstract/database_limits.rb', line 39

def indexes_per_table
  16
end

#joins_per_queryObject

Returns maximum number of joins in a single query.



60
61
62
# File 'lib/active_record/connection_adapters/abstract/database_limits.rb', line 60

def joins_per_query
  256
end

#sql_query_lengthObject

Returns the maximum length of an SQL query.



55
56
57
# File 'lib/active_record/connection_adapters/abstract/database_limits.rb', line 55

def sql_query_length
  1048575
end

#table_alias_lengthObject

Returns the maximum length of a table alias.



5
6
7
# File 'lib/active_record/connection_adapters/abstract/database_limits.rb', line 5

def table_alias_length
  255
end

#table_name_lengthObject

Returns the maximum length of a table name.



15
16
17
# File 'lib/active_record/connection_adapters/abstract/database_limits.rb', line 15

def table_name_length
  64
end