mirror of
https://github.com/apache/superset.git
synced 2026-04-19 08:04:53 +00:00
Preprocess the where clauses. (#2405)
This commit is contained in:
@@ -517,6 +517,7 @@ class SqlaTable(Model, BaseDatasource):
|
||||
)
|
||||
logging.info(sql)
|
||||
sql = sqlparse.format(sql, reindent=True)
|
||||
sql = self.database.db_engine_spec.sql_preprocessor(sql)
|
||||
return sql
|
||||
|
||||
def query(self, query_obj):
|
||||
|
||||
@@ -115,9 +115,9 @@ class BaseEngineSpec(object):
|
||||
def sql_preprocessor(cls, sql):
|
||||
"""If the SQL needs to be altered prior to running it
|
||||
|
||||
For example Presto needs to double `%` characters
|
||||
For example db api needs to double `%` characters
|
||||
"""
|
||||
return sql
|
||||
return sql.replace('%', '%%')
|
||||
|
||||
@classmethod
|
||||
def patch(cls):
|
||||
@@ -279,10 +279,6 @@ class PrestoEngineSpec(BaseEngineSpec):
|
||||
from superset.db_engines import presto as patched_presto
|
||||
presto.Cursor.cancel = patched_presto.cancel
|
||||
|
||||
@classmethod
|
||||
def sql_preprocessor(cls, sql):
|
||||
return sql.replace('%', '%%')
|
||||
|
||||
@classmethod
|
||||
def convert_dttm(cls, target_type, dttm):
|
||||
tt = target_type.upper()
|
||||
|
||||
Reference in New Issue
Block a user