diff --git a/docs/installation.rst b/docs/installation.rst index 8ef994a23..7bc9f61f3 100644 --- a/docs/installation.rst +++ b/docs/installation.rst @@ -415,11 +415,6 @@ You can also use `PyAthena` library(no java required) like this :: See `PyAthena `_. -MSSQL ------ - -Full Unicode support requires SQLAlchemy 1.3 or later. - Snowflake --------- diff --git a/requirements.txt b/requirements.txt index ae4e48751..b20d0c421 100644 --- a/requirements.txt +++ b/requirements.txt @@ -63,7 +63,7 @@ selenium==3.141.0 simplejson==3.15.0 six==1.11.0 # via bleach, cryptography, isodate, pathlib2, polyline, pydruid, python-dateutil, sqlalchemy-utils, wtforms-json sqlalchemy-utils==0.32.21 -sqlalchemy==1.2.18 +sqlalchemy==1.3.1 sqlparse==0.2.4 unicodecsv==0.14.1 urllib3==1.22 # via requests, selenium diff --git a/setup.py b/setup.py index cc477666f..3c732b8e3 100644 --- a/setup.py +++ b/setup.py @@ -100,7 +100,7 @@ setup( 'retry>=0.9.2', 'selenium>=3.141.0', 'simplejson>=3.15.0', - 'sqlalchemy>=1.2.18, <1.3.0', + 'sqlalchemy>=1.3.1,<2.0', 'sqlalchemy-utils', 'sqlparse', 'unicodecsv', diff --git a/superset/db_engine_specs.py b/superset/db_engine_specs.py index 04779049d..8be1a216d 100644 --- a/superset/db_engine_specs.py +++ b/superset/db_engine_specs.py @@ -46,7 +46,7 @@ from sqlalchemy.engine import create_engine from sqlalchemy.engine.url import make_url from sqlalchemy.sql import quoted_name, text from sqlalchemy.sql.expression import TextAsFrom -from sqlalchemy.types import UnicodeText +from sqlalchemy.types import String, UnicodeText import sqlparse from werkzeug.utils import secure_filename @@ -1423,10 +1423,16 @@ class MssqlEngineSpec(BaseEngineSpec): data = [[elem for elem in r] for r in data] return data + column_types = [ + (String(), re.compile(r'^(?