Module: SqlGenius::Core::QueryBuilders
- Extended by:
- QueryBuilders
- Included in:
- QueryBuilders
- Defined in:
- lib/sql_genius/core/query_builders.rb,
lib/sql_genius/core/query_builders/mysql.rb,
lib/sql_genius/core/query_builders/postgresql.rb
Overview
Factory for dialect-specific SQL query builders used by the analysis classes. Each builder is a stateless module exposing class methods that return raw SQL strings; the analysis class is responsible for executing them and mapping result rows into output hashes.
Builders intentionally output a stable column-name contract so that downstream transformation logic doesn’t need to know which dialect produced the rows. See QueryBuilders::Mysql and ::Postgresql.
Defined Under Namespace
Modules: Mysql, Postgresql
Instance Method Summary collapse
Instance Method Details
#for(connection) ⇒ Object
16 17 18 19 20 21 |
# File 'lib/sql_genius/core/query_builders.rb', line 16 def for(connection) case connection.server_version.dialect when :postgresql then Postgresql else Mysql end end |