Files

Class/Module Index [+]

Quicksearch

ArJdbc::MSSQL::Utils

@note Lot of code kindly borrowed from *activerecord-sqlserver-adapter*.

Public Instance Methods

get_table_name(sql, qualified = nil) click to toggle source
# File lib/arjdbc/mssql/utils.rb, line 13
def get_table_name(sql, qualified = nil)
  if sql =~ GET_TABLE_NAME_INSERT_UPDATE_RE
    tn = $2 || $3
    qualified ? tn : unqualify_table_name(tn)
  elsif sql =~ GET_TABLE_NAME_FROM_RE
    qualified ? $1 : unqualify_table_name($1)
  else
    nil
  end
end
remove_identifier_delimiters(keyword) click to toggle source

See “Delimited Identifiers”: msdn.microsoft.com/en-us/library/ms176027.aspx

# File lib/arjdbc/mssql/utils.rb, line 53
def remove_identifier_delimiters(keyword)
  keyword.to_s.tr("\]\[\"", '')
end
unqualify_db_name(table_name) click to toggle source
# File lib/arjdbc/mssql/utils.rb, line 45
def unqualify_db_name(table_name)
  table_names = table_name.to_s.split('.')
  table_names.length == 3 ? remove_identifier_delimiters(table_names.first) : nil
end
unqualify_table_name(table_name) click to toggle source
# File lib/arjdbc/mssql/utils.rb, line 36
def unqualify_table_name(table_name)
  remove_identifier_delimiters(table_name.to_s.split('.').last)
end
unqualify_table_schema(table_name) click to toggle source
# File lib/arjdbc/mssql/utils.rb, line 40
def unqualify_table_schema(table_name)
  schema_name = table_name.to_s.split('.')[-2]
  schema_name.nil? ? nil : remove_identifier_delimiters(schema_name)
end
unquote_column_name(column_name) click to toggle source
# File lib/arjdbc/mssql/utils.rb, line 28
def unquote_column_name(column_name)
  remove_identifier_delimiters(column_name)
end
unquote_string(string) click to toggle source
# File lib/arjdbc/mssql/utils.rb, line 32
def unquote_string(string)
  string.to_s.gsub("''", "'")
end
unquote_table_name(table_name) click to toggle source
# File lib/arjdbc/mssql/utils.rb, line 24
def unquote_table_name(table_name)
  remove_identifier_delimiters(table_name)
end

[Validate]

Generated with the Darkfish Rdoc Generator 2.