Module: Relationizer::MySQL
- Defined in:
- lib/relationizer/mysql.rb
Defined Under Namespace
Classes: ReasonlessTypeError, TypeNotFoundError
Constant Summary collapse
- DEFAULT_TYPES =
-> (obj) { case obj when Integer then :BIGINT when BigDecimal then :'DECIMAL(65,30)' when Float then :DOUBLE when String then :TEXT when TrueClass then :BOOLEAN when FalseClass then :BOOLEAN when Time then :DATETIME when DateTime then :DATETIME when Date then :DATE else nil end }
Instance Method Summary collapse
Instance Method Details
#create_relation_literal(schema, tuples) ⇒ Object
26 27 28 29 30 31 32 33 34 35 |
# File 'lib/relationizer/mysql.rb', line 26 def create_relation_literal(schema, tuples) types = fixed_types(schema.values, tuples) names = schema.keys json_string = to_json_document(names, types, tuples) escaped = escape_for_sql(json_string) columns_clause = to_columns_clause(names, types) %[(SELECT * FROM JSON_TABLE('#{escaped}', "$[*]" COLUMNS(#{columns_clause})) AS t)] end |