Open hmlpinto opened 2 years ago
When interacting with the sql method of the RestApiClient, the function leverages the method sql_post from QueriesAPI.
sql
RestApiClient
sql_post
QueriesAPI
This latter method does not leverage the query argument passed by the function.
query
The method from QueriesAPI that leverages the query argument directly is the sql_get
sql_get
At the moment, I'm forced to override the call from sql_post to sql_get in method sql of the RestApiClient for the method to work.
def override_sql(self, dataset_key, query, desired_mimetype='application/json', **kwargs): """Executes SQL queries against a dataset via POST :param dataset_key: Dataset identifier, in the form of owner/id :type dataset_key: str :param query: SQL query :type query: str :param include_table_schema: Flags indicating to include table schema in the response :type include_table_schema: bool :returns: file object that can be used in file parsers and data handling modules. :rtype: file-like object :raises RestApiException: If a server error occurs Examples -------- >>> import datadotworld as dw >>> api_client = dw.api_client() >>> api_client.sql('username/test-dataset', 'query') # doctest: +SKIP """ api_client = self._build_api_client( default_mimetype_header_accept=desired_mimetype) queries_api = kwargs.get('queries_api_mock', _swagger.QueriesApi(api_client)) owner_id, dataset_id = parse_dataset_key(dataset_key) try: response = queries_api.sql_get( owner_id, dataset_id, query, _preload_content=False, **kwargs) return six.BytesIO(response.data) except _swagger.rest.ApiException as e: raise RestApiError(cause=e) RestApiClient.sql = override_sql
Should I use a different method to leverage the sql query functionality?
When interacting with the
sql
method of theRestApiClient
, the function leverages the methodsql_post
fromQueriesAPI
.This latter method does not leverage the
query
argument passed by the function.The method from
QueriesAPI
that leverages thequery
argument directly is thesql_get
At the moment, I'm forced to override the call from
sql_post
tosql_get
in methodsql
of theRestApiClient
for the method to work.Should I use a different method to leverage the sql query functionality?