# File lib/flexirecord.rb, line 694
694:       def sql(command_template, *command_arguments)
695:         records = nil
696:         if command_template
697:           transaction(:unless_open, :serializable) do
698:             use_connection do |connection|
699:               records = connection.record_query(self, command_template, *command_arguments)
700:             end
701:             after_select(records)
702:           end
703:         else
704:           records = FlexiRecord::RecordArray.new(self)
705:           after_select(records)
706:         end
707:         return records
708:       end