Bases: sqlalchemy.sql.compiler.SQLCompiler
used to compile <sql.expression.Update> expressions
only implements a subset of the SQLCompiler.visit_update method e.g. updating multiple tables is not supported.
change the params to enable partial updates
sqlalchemy by default only supports updates of complex types in the form of
“col = ?”, ({“x”: 1, “y”: 2}
but crate supports
“col[‘x’] = ?, col[‘y’] = ?”, (1, 2)
by using the Craty (MutableDict) type. The update statement is only rewritten if a item of the MutableDict was changed.
Bases: sqlalchemy.engine.default.DefaultDialect
alias of CrateCompiler
Bases: unittest.case.TestCase
Bases: unittest.case.TestCase
date type should also be able to handle iso datetime strings.
this verifies that the fallback in the Date result_processor works.
Bases: unittest.case.TestCase
if only one attribute of Craty is changed the update should only update that attribute not all attributes of Craty
test that the change tracking doesn’t get messed up
delitem -> setitem
test that the change tracking doesn’t get messed up
setitem -> delitem
test that the change tracking doesn’t get messed up
setitem -> delitem -> setitem