diff --git a/src/databricks/sqlalchemy/_types.py b/src/databricks/sqlalchemy/_types.py index 5fc14a70..a221c7ce 100644 --- a/src/databricks/sqlalchemy/_types.py +++ b/src/databricks/sqlalchemy/_types.py @@ -33,6 +33,7 @@ def process_literal_param_hack(value: Any): @compiles(sqlalchemy.types.Unicode, "databricks") @compiles(sqlalchemy.types.UnicodeText, "databricks") @compiles(sqlalchemy.types.Uuid, "databricks") +@compiles(sqlalchemy.types.JSON, "databricks") def compile_string_databricks(type_, compiler, **kw): """ We override the default compilation for Enum(), String(), Text(), and Time() because SQLAlchemy diff --git a/src/databricks/sqlalchemy/test_local/test_types.py b/src/databricks/sqlalchemy/test_local/test_types.py index b91217ed..a843d93d 100644 --- a/src/databricks/sqlalchemy/test_local/test_types.py +++ b/src/databricks/sqlalchemy/test_local/test_types.py @@ -128,6 +128,7 @@ def test_numeric_renders_as_decimal_with_precision_and_scale(self): sqlalchemy.types.INT: DatabricksDataType.INT, sqlalchemy.types.SMALLINT: DatabricksDataType.SMALLINT, sqlalchemy.types.TIMESTAMP: DatabricksDataType.TIMESTAMP, + sqlalchemy.types.JSON: DatabricksDataType.STRING, TINYINT: DatabricksDataType.TINYINT, TIMESTAMP: DatabricksDataType.TIMESTAMP, TIMESTAMP_NTZ: DatabricksDataType.TIMESTAMP_NTZ,