class ActiveRecord::StatementInvalid

Wraps the underlying database error as cause.
Superclass for all database execution errors.

def initialize(message = nil, sql: nil, binds: nil, connection_pool: nil)

def initialize(message = nil, sql: nil, binds: nil, connection_pool: nil)
  super(message || $!&.message, connection_pool: connection_pool)
  @sql = sql
  @binds = binds
end

def set_query(sql, binds)

def set_query(sql, binds)
  unless @sql
    @sql = sql
    @binds = binds
  end
  self
end