|
@@ -114,11 +114,12 @@ class SqlAlchemyApi(Api):
|
|
|
engine = self._create_engine()
|
|
engine = self._create_engine()
|
|
|
connection = engine.connect()
|
|
connection = engine.connect()
|
|
|
result = connection.execution_options(stream_results=True).execute(snippet['statement'])
|
|
result = connection.execution_options(stream_results=True).execute(snippet['statement'])
|
|
|
|
|
+
|
|
|
cache = {
|
|
cache = {
|
|
|
'connection': connection,
|
|
'connection': connection,
|
|
|
'result': result,
|
|
'result': result,
|
|
|
'meta': [{
|
|
'meta': [{
|
|
|
- 'name': col[0] if type(col) is dict or type(col) is tuple else col,
|
|
|
|
|
|
|
+ 'name': col[0] if (type(col) is tuple or type(col) is dict) else col.name if hasattr(col, 'name') else col,
|
|
|
'type': 'STRING_TYPE',
|
|
'type': 'STRING_TYPE',
|
|
|
'comment': ''
|
|
'comment': ''
|
|
|
} for col in result.cursor.description]
|
|
} for col in result.cursor.description]
|
|
@@ -320,4 +321,4 @@ class Assist():
|
|
|
result = connection.execution_options(stream_results=True).execute(statement)
|
|
result = connection.execution_options(stream_results=True).execute(statement)
|
|
|
return result.cursor.description, result.fetchall()
|
|
return result.cursor.description, result.fetchall()
|
|
|
finally:
|
|
finally:
|
|
|
- connection.close()
|
|
|
|
|
|
|
+ connection.close()
|