lib/bmg/sequel/translator.rb in bmg-0.16.3 vs lib/bmg/sequel/translator.rb in bmg-0.16.4

- old
+ new

@@ -117,10 +117,16 @@ def on_native_table_as(sexpr) sexpr[1].from_self(:alias => sexpr.as_name) end def on_table_as(sexpr) - ::Sequel.as(::Sequel.expr(sexpr.table_name.to_sym), ::Sequel.identifier(sexpr.as_name)) + table_name = case sexpr.table_name + when String, Symbol then ::Sequel.expr(sexpr.table_name.to_sym) + when ::Sequel::SQL::QualifiedIdentifier then sexpr.table_name + else + raise ArgumentError, "Invalid table name `#{sexpr.table_name}`" + end + ::Sequel.as(table_name, ::Sequel.identifier(sexpr.as_name)) end def on_subquery_as(sexpr) ::Sequel.as(apply(sexpr.subquery), ::Sequel.identifier(sexpr.as_name)) end