module ActiveRecord::ConnectionAdapters::PostgreSQL::Quoting::ClassMethods
def column_name_matcher
def column_name_matcher / \A ( (?: # "schema_name"."table_name"."column_name"::type_name | function(one or no argument)::type_name ((?:\w+\.|"\w+"\.){,2}(?:\w+|"\w+")(?:::\w+)? | \w+\((?:|\g<2>)\)(?:::\w+)?) ) (?:(?:\s+AS)?\s+(?:\w+|"\w+"))? ) (?:\s*,\s*\g<1>)* \z /ix end
def column_name_with_order_matcher
def column_name_with_order_matcher / \A ( (?: # "schema_name"."table_name"."column_name"::type_name | function(one or no argument)::type_name ((?:\w+\.|"\w+"\.){,2}(?:\w+|"\w+")(?:::\w+)? | \w+\((?:|\g<2>)\)(?:::\w+)?) ) (?:\s+COLLATE\s+"\w+")? (?:\s+ASC|\s+DESC)? (?:\s+NULLS\s+(?:FIRST|LAST))? ) (?:\s*,\s*\g<1>)* \z /ix end
def quote_column_name(name) # :nodoc:
Quotes column names for use in SQL queries.
def quote_column_name(name) # :nodoc: QUOTED_COLUMN_NAMES[name] ||= PG::Connection.quote_ident(name.to_s).freeze end
def quote_table_name(name) # :nodoc:
- "schema.name"."table.name"
- "schema.name".table_name
- schema_name."table.name"
- schema_name.table_name
- "table.name"
- table_name
Checks the following cases:
def quote_table_name(name) # :nodoc: QUOTED_TABLE_NAMES[name] ||= Utils.extract_schema_qualified_name(name.to_s).quoted.freeze end