Generar consultas SQL con Ruby
Pregunta
Quiero una manera fácil de generar consultas SQL en Ruby. Sé todo sobre Activerecord, Sequel y DataMapper. No estoy buscando un ORM, sino una forma más fácil de generar cadenas de declaración SQL.
Estoy usando Rbhive ejecutar consultas de colmena y me gustaría una manera fácil de generar las declaraciones de consulta de colmena.
Seguramente esto existe (AR, etc.) y he mirado Arel, que parece prometedor. Pero no puedo entender cómo eliminar las piezas de generación de la declaración SQL de las populares bibliotecas ORM. Todo requiere una conexión a un servidor de base de datos.
Actualmente solo uso cadenas SQL sin procesar, pero quiero alejarme de eso, ya que las consultas se están volviendo cada vez más complejas y propensas a errores.
¿Algunas ideas?
Solución
Tienes razón, está buscando Arel, que se utiliza para construir un AST para declaraciones SQL y no requiere una conexión de base de datos.
Sin embargo, la sintaxis es bastante diferente de lo que estás acostumbrado a ver. Así que ten en cuenta.
Lea el Readme aquí para ver si tiene sentido para usted:
Otros consejos
You said
Everything requires a connection to a database server.
I think, at least with Sequel you can use a dummy Database:
require 'sequel'
DB = Sequel::Database.new() #-> <Sequel::Database: >
puts DB[:test].sql #-> SELECT * FROM "TEST"