Module: Listable::ConnectionAdapters::SchemaStatements

Defined in:
lib/listable/connection_adapters.rb

Instance Method Summary collapse

Instance Method Details

#create_view(view_name, queries) ⇒ Object



5
6
7
8
9
10
11
# File 'lib/listable/connection_adapters.rb', line 5

def create_view(view_name, queries)
  create_sql = "CREATE VIEW #{view_name.to_s.pluralize} AS "
  queries.map!(&:to_sql) # Compile the arel queries to sql
  create_sql << queries * ' UNION ' # Combines the queries with union

  execute create_sql
end

#drop_view(view_name) ⇒ Object



13
14
15
# File 'lib/listable/connection_adapters.rb', line 13

def drop_view(view_name)
  execute "DROP VIEW #{view_name}"
end