Module: ActiveRecord::SchemaStatements
- Defined in:
- lib/active_record/pg_collation/schema_statements.rb
Instance Method Summary collapse
-
#create_collation(name, options = {}) ⇒ Object
Create a collation.
-
#create_collation_from(name, existing_collation) ⇒ Object
Create a collation from.
-
#drop_collation(name, option = "RESTRICT") ⇒ Object
Drop a collation.
Instance Method Details
#create_collation(name, options = {}) ⇒ Object
Create a collation
CREATE COLLATION [ IF NOT EXISTS ] name (
[ LOCALE = locale, ]
[ LC_COLLATE = lc_collate, ]
[ LC_CTYPE = lc_ctype, ]
[ PROVIDER = provider, ]
[ DETERMINISTIC = boolean, ]
[ VERSION = version ]
)
20 21 22 23 |
# File 'lib/active_record/pg_collation/schema_statements.rb', line 20 def create_collation(name, = {}) = .map {|k,v| %Q{#{k} = '#{v}'} }.join(", ") execute(%Q{CREATE COLLATION IF NOT EXISTS #{name} (#{})}).tap {reload_type_map} end |
#create_collation_from(name, existing_collation) ⇒ Object
Create a collation from
CREATE COLLATION [ IF NOT EXISTS ] name FROM existing_collation
28 29 30 |
# File 'lib/active_record/pg_collation/schema_statements.rb', line 28 def create_collation_from(name, existing_collation) execute(%Q{CREATE COLLATION IF NOT EXISTS #{name} FROM "#{existing_collation}"}).tap {reload_type_map} end |
#drop_collation(name, option = "RESTRICT") ⇒ Object
Drop a collation
DROP COLLATION [ IF EXISTS ] name [ CASCADE | RESTRICT ]
35 36 37 |
# File 'lib/active_record/pg_collation/schema_statements.rb', line 35 def drop_collation(name, option = "RESTRICT") execute(%Q{DROP COLLATION IF EXISTS #{name} #{option}}).tap {reload_type_map} end |