module ActiveRecord::ConnectionAdapters::PostgreSQL::SchemaStatements
def check_constraints(table_name) # :nodoc:
def check_constraints(table_name) # :nodoc: scope = quoted_scope(table_name) check_info = exec_query(<<-SQL, "SCHEMA") SELECT conname, pg_get_constraintdef(c.oid, true) AS constraintdef, c.convalidated AS valid FROM pg_constraint c JOIN pg_class t ON c.conrelid = t.oid JOIN pg_namespace n ON n.oid = c.connamespace WHERE c.contype = 'c' AND t.relname = #{scope[:name]} AND n.nspname = #{scope[:schema]} SQL check_info.map do |row| options = { name: row["conname"], validate: row["valid"] } expression = row["constraintdef"][/CHECK \((.+)\)/m, 1] CheckConstraintDefinition.new(table_name, expression, options) end end