Method: TableCopy::PG::Destination#create_views

Defined in:
lib/table_copy/pg/destination.rb

#create_views(views) ⇒ Object



118
119
120
121
122
123
124
125
126
127
128
129
130
# File 'lib/table_copy/pg/destination.rb', line 118

def create_views(views)
  with_conn do |conn|
    views.inject({}) do |result, view|
      begin
        conn.exec("create or replace view #{view['viewname']} as (#{view['definition'].gsub(/;\z/, '')})")
        result[view['viewname']] = true
      rescue ::PG::UndefinedTable, ::PG::UndefinedColumn => e
        result[view['viewname']] = false
      end
      result
    end
  end
end