module RailsSqlViews4::ConnectionAdapters::SQLServerAdapter
Public Instance Methods
base_tables(name = nil)
click to toggle source
Get all of the non-view tables from the currently connected schema
# File lib/rails_sql_views4/connection_adapters/sqlserver_adapter.rb, line 10 def base_tables(name = nil) # this is untested select_values("SELECT table_name FROM information_schema.tables", name) end
Also aliased as: nonview_tables
supports_views?()
click to toggle source
Returns true as this adapter supports views.
# File lib/rails_sql_views4/connection_adapters/sqlserver_adapter.rb, line 5 def supports_views? true end
view_select_statement(view, name=nil)
click to toggle source
Get the view select statement for the specified view.
# File lib/rails_sql_views4/connection_adapters/sqlserver_adapter.rb, line 22 def view_select_statement(view, name=nil) q =<<-ENDSQL SELECT view_definition FROM information_schema.views WHERE table_name = '#{view}' ENDSQL view_def = select_value(q, name) if view_def return convert_statement(view_def) else raise "No view called #{view} found" end end
views(name = nil)
click to toggle source
Returns all the view names from the currently connected schema.
# File lib/rails_sql_views4/connection_adapters/sqlserver_adapter.rb, line 17 def views(name = nil) select_values("SELECT table_name FROM information_schema.views", name) end
Private Instance Methods
convert_statement(s)
click to toggle source
# File lib/rails_sql_views4/connection_adapters/sqlserver_adapter.rb, line 38 def convert_statement(s) s.sub(/^CREATE.* AS (select .*)/i, '\1').gsub(/\n/, '') end